一、标识符:
作用:给类、接口、方法、变量起名字使用的字符序列
规则:
- 以字母(Unicode字符集)、下划线、$开头,可以使用汉字、因为Unicode字符 汉字包含在内
- 其余部分可以为字母、数字、下划线、$
- 不能为关键字
- 大小写敏感,长度无限制
二、变量:
内存里面的内存块,本质是一个“可操作的存储空间”,空间位置确定。通过变量名访问
-
局部变量:定义在方法、语句块内。 从属于方法、语句块
- 生命周期:从生命位置开始到方法或语句块执行完毕为止
- 特点:需要先声明初始化(赋初值)再使用
-
成员变量(实例变量 field)定义在类里面,方法外。 从属于对象
- 生命周期:从属于对象,生命周期伴随对象终止
- 特点:如不手动初始化,他会自动初始化并设置默认初始值
- 数字:0,0.0 布尔:false char:‘\u0000’引用类型:null
-
静态变量(类变量):定义在类里面、方法外,使用static修饰。 从属于类
- 生命周期:从属于类,生命周期伴随类始终,从类加载到卸载
- 特点:如成员变量,如不手动初始化,系统将自动初始化
三、数据类型:
-
基本数据类型:
- 数字
-
整数:
-
byte(1个字节)
-
short(2个字节)
-
int(4个字节,整型常量默认为该类型)
-
long(8个字节)
表示方法:
十进制:1,2,4
八进制:0开头
十六进制:0x开头
二进制:0b开头
-
-
浮点数:
-
float(4个字节)
-
double(8个字节,浮点常量默认为该类型)
不要使用浮点数进行比较,如比较使用BigDecimal
java.math包下的两个类:
BigDecimal:实现任意精度浮点运算
BigInteger:实现任意精度整数运算
-
-
字符:char(2个字节,默认Unicode,一般采用utf-8)
-
布尔:boolean(1个字节)
-
- 数字
-
引用数据类型(4个字节):
- 数组
- 对象
- 接口
四、表达式和运算符:
表达式:
1、类型的自动提升:
如果有long,结果就是long 如果有double,结果是double*
byte->short—>int->long char->int float->double int->float long->double
long->float
2、强制类型转换:
(type)var
五、运算符:
1、算术运算符
一元运算符:++、--
二元运算符:+、-、*、/、%
2、逻辑运算符
&&,||,!短路运算
&、|、^、!
3、关系运算符
==、!=、>、<、>=、<= 常见错误写法: 1>a<2 应写为:a>2&&a<1
4、位运算
&、|、~、^、<<(左移一位相当于乘2)、>>
5、条件运算符(三目运算符)
(布尔表达式)?y:z
6、字符串连接符:+
7、赋值运算符(扩展运算符):=、+=、-=、*=、/=、%=
六、控制语句:
- 顺序结构
- 选择结构
- if
- if else
- if else if……else
- switch
- break问题
- 循环结构
- while 先判断后执行
- do while 先执行后判断
- for
break:终止整个循环
Continue:结束本次循环,继续下一次
带标签的break 和 continue