title: [Java] 变量与表达式

你已经学会输出 Hello world 了, 那么现在, 我们来学习关于变量的知识

基本数据类型

在 Java 中, 有 8 种基本的数据类型:

名称 描述
byte 即字节, 是计算机中最小的存储单位, 平常说的兆, 其实指的就是兆字节, 内存占用大小也当然是1byte
short 即短整型, 一个比较小的, 用于存储整数的类型, 内存占用 2byte
int 全称是integer, 即整数, 有时也称int32, 因为它占用 4byte, 即32bit
long 即长整型, 存储比较大的整数, 占用的空间是int的两倍, 8byte
float 即浮点数, 用来存储小数, 占用空间大小是4byte
double 即双精度浮点数, 也用来存储小数, 精度是float的两倍, 占用空间大小是float的两倍, 8byte
boolean 即布尔类型, 它的值只有两种情况, 真(true) 或 假(false), 占用空间大小是1byte
char 字符类型, 用来存储单个字符, 因为Java中字符类型存储Unicode字符, 所以它占用2byte的空间

还有一种常用类型, 是 String, 即字符串.

定义变量

定义变量, 语法很简单, 只需要指定类型与名称即可:

类型 名称;
// 示例 :
int num;

如果需要在定义变量的时候就为它赋值, 则可以使用下面的语法:

类型 名称 = 初始值;
// 示例 :
int num = 114514;

使用数据

在程序中, 我们要使用的数据无非是变量和常量两种, 因为变量的值可以被更改, 所以它的名字才是 '变'量. 而不能够被更改的, 就是常量. 两者的用法是一样的.

System.out.println("Hello world");
// 在这个示例中, 我们输出了一个 "Hello world", 这个值显然是无法因程序的语句而变更的, 所以称之为常量
int num = 114514;
System.out.println(num);
// 在这个示例中, 我们定义了一个类型为整数的变量, 并为其赋值 114514, 一般的我们不会这样直接将一个定义的变量直接输出, 而是根据一些运算, 得出一些数据, 然后再输出, 这些数据是可变的, 不是固定的, 即, 变量
int num = 114000;
num = num + 514;
System.out.println(num);
// 这个示例中, 最终输出的是 114514, 而这个值是经过运算得来的, num 发生了变化, 即, 变量.

你可以直接用 println 输出一个 Hello world, 也可以先定义一个字符串, 赋值为 Hello world, 然后输出这个变量, 两者的执行效果是没有区别的, 也就是刚刚说的, 两者用法是一样的.

运算符

Java 里面有一些运算符, 例如加减乘除啥的, 这是算术运算符, 它们的作用也简单, 正如其名. 不同的数据类型, 对于同一运算符, 执行效果是不同的, 例如, 两个整数相加, 结果就是这两个数字相加的结果. 但如果是两个字符串相加, 那么结果就是这两个字符串拼接的结果.

1 + 1, "Hello world!" + " - The first program by Null", 3 + 0.14

运算符有优先级之说, 例如数学中的先算乘除, 后算加减, 这就是运算符的优先级. 同时, 括号的优先级是很高的, 优于乘除

而事实上, 也有其它的运算符, 例如括号本质上也是运算符, 不过这个我们以后会学到, 这里暂且不作说明.

表达式

数据通过运算符相连, 就是表达式. 例如 1+1, "test"+" program", 1+2+3. 表达式有返回值, 即, 表达式的运算结果, 例如几个字符串用加号相连, 最终的返回值就是这几个字符串连接起来的结果.

易错点:

有些同学会犯一些愚蠢的错误. 它们可能会这么写:

int a = 114514;
System.out.println("a 的值是:" a);

看出哪里错了吗? 上述代码中, 一个字符串和一个整数并列, 却没有使用任何运算符相连! 这是错误的! 完完全全的错误!

如果你想打印 "a 的值是", 后跟变量a的值, 请使用加号把它们连接起来! 因为这样, 它们才能进行运算, 最终得到一个值, 然后打印到控制台.

[Java] 数据类型, 变量, 运算符, 表达式的更多相关文章

  1. 速战速决 (1) - PHP: 概述, 常量, 变量, 运算符, 表达式, 控制语句

    [源码下载] 速战速决 (1) - PHP: 概述, 常量, 变量, 运算符, 表达式, 控制语句 作者:webabcd 介绍速战速决 之 PHP 概述 常量 变量 运算符 表达式 控制语句 示例1. ...

  2. JAVA数据类型,变量,转换,常量,运算符

    java数据类型: Java基本类型共有八种,基本类型可以分为三类: 1.字符类型char,用单引号赋值 2.布尔类型boolean 3.数值类型byte.short.int.long.float.d ...

  3. Java 数据类型 & 变量与常量 & 注释

    一.数据类型 1.数据类型分类 Java 的数据类型分为两大类: 基本数据类型:整数.浮点数.字符型.布尔型 引用数据类型(对象类型):类.数组,字符串.接口等. 2.基本数据类型 四类八种基本数据类 ...

  4. Java 数据类型与运算符

    JAVA数据类型分基本(内置)数据类型和引用数据类型. 区别: 基本数据类型在被创建时,在栈上给其划分一块内存,将数值直接存储在栈上. 引用数据类型在被创建时,首先要在栈上给其引用(句柄)分配一块内存 ...

  5. Java数据类型与运算符

    Java 基本数据类型 Java 的两大数据类型: 内置数据类型 引用数据类型 内置数据类型 Java语言提供了八种基本类型.六种数字类型(四个整数型,两个浮点型),一种字符类型,还有一种布尔型. b ...

  6. Swift 基本数据类型与运算符表达式

    // // main.swift // LessonSwift01 // // Created by lanouhn on 16/1/25. // Copyright © 2016年 齐彦坤. All ...

  7. smarty模板 变量 运算符 表达式 流程控制 函数

    ① 从配置文件中读取配置: 1,在模板页面加载配置文件 html页面 不是php页面<{config_load file='fo.conf'}> 2,在需要用到配置的地方加<{#si ...

  8. 2016/04/29 smarty模板 1, 初步 目标 : 变量 运算符 表达式 流程控制 函数

    ① 从配置文件中读取配置: 1,在模板页面加载配置文件 html页面 不是php页面 <{config_load file='fo.conf'}> 2,在需要用到配置的地方加 <{# ...

  9. Java ——关键字 数据类型 变量 常量

    本节重点思维导图 Java程序结构 public class 类名 { public static void main(String[] args){ //……语句 } } 一门语言是由以下各种元素组 ...

随机推荐

  1. vue 递归调用组件出错

    报错信息: Avoid mutating an injected value directly since the changes will be overwritten whenever the p ...

  2. Spring Boot 老启动失败,这次再也不怕了!

    Spring Boot 项目是不是经常失败,显示一大堆的错误信息,如端口重复绑定时会打印以下异常: *************************** APPLICATION FAILED TO ...

  3. 为 APK 文件增加右键菜单组实现快捷安装

    0.结果 1.需求 迫于每次都要打开 Powershell 手动敲 adb install xxx.apk 太麻烦,就想通过注册表搞一个右键菜单,实现快捷安装 apk 的功能. 最后决定先实现三个功能 ...

  4. 虚拟机测试cobbler,网络安装加载最后出现 dracut:/#

    1.cobbler的几个重要概念: distro:发行版系统容,我理解为镜像来源,提供了kernel 和 initrd 文件以及repo源 profile:kickstart文件,用于定制系统,定制安 ...

  5. 【HTB系列】Beep

    出品|MS08067实验室(www.ms08067.com) 这次挑战的是 HTB 的第5台靶机:Beep,评分很高,难度中等 靶机描述 Beep 运行了大量的服务,这对正确发掘入口点有一定的挑战,由 ...

  6. 「视频小课堂」Logstash如何成为镇得住场面的数据管道(文字版)

    视频地址 B站视频地址:Logstash如何成为镇得住场面的数据管道 公众号视频地址:Logstash如何成为镇得住场面的数据管道 知乎视频地址:Logstash如何成为镇得住场面的数据管道 内容 首 ...

  7. 建立高速缓存机制-java版

    前言 ​ 一台计算机的核心是CPU,它是计算机系统的运算和控制核心.由于它处理运算速度快,所以基本都会给CPU配置一级缓存,当CPU要读取一个数据时,首先从缓存中查询,如果没有在从内存或者磁盘块中找. ...

  8. P1618 三连击(升级版)(JAVA语言)

    题目描述 将1,2,-,9共9个数分成三组,分别组成三个三位数,且使这三个三位数的比例是A:B:C,试求出所有满足条件的三个三位数,若无解,输出"No!!!". //感谢黄小U饮品 ...

  9. Spring源码之注解扫描Component-scan

    本文主要介绍Spring的component-scan标签,了解spring是如何实现扫描注解进行bean的注册,主要实现实在 NamespaceHandler, NamespaceHandlerSu ...

  10. Go 语言入门教程,共32讲,6小时(已完结)

    Go语言入门教程,共32讲,6小时(完结) 在B站:https://www.bilibili.com/video/BV1fD4y1m7TD/