1 Java中基本数据类型:

基本类型

大小

最小值

最大值

包装类型

byte

8 bits

-2^7

2^7-1

Byte

short

16 bits

-2^15

2^15 -1

Short

char


16 bits

Unicode 0

Unicode 2^16 -1

Character

int

32 bits

-2^31

2^31 -1

Integer

long

64 bits

-2^63

2^63 -1

Long

float

32 bits

-3.4028235E38

3.4028235E38

Float

double

64 bits

-1.797693E308

1.797693E308

Double

boolean

——

——

——

Boolean

2 算术操作符

符号

描述

+


-


*


/


%

取模 整数除法产生的余数

一元加、减操作符
一元减号用于转变数据的符号 一元加号会将较小类型的操作数提升为 int 。

3 自增自减操作符

符号

描述

++

增加一个单位

- -

减少一个单位

int a = 1 ;
a++ a- - 会先使用该值再进行自增或自减
++a - -a 会先自增或自减再使用该值

4 关系操作符

符号

描述

结果

>

大于

大于则结果为 true 其他为 false

<

小于

小于则结果为 true 其他为 false

==

是否相等

等于则结果为 true 其他为 false

>=

大于或等于

大于或等于则结果为 true 其他为 false

<=

小于或等于

小于或等于则结果为 true 其他为 false

!=

不等于

不等于则结果为 true 其他为 false

关系操作符生成 一个 boolean值的结果 true 或 false 。
等于和不等于 适用于所有基本数据类型,其他比较符不适用于boolean类型

5 原码 反码 补码

数字

原码

反码

补码

18

10010

10010

10010

负数

负数符号位为1

按位取反,符号位不变

反码的末尾 加1

正数的原码反码补码相同
-5 的原码: 1 0000000 00000000 00000000 00000101

-5 的反码: 1 1111111 11111111 11111111 11111010 按位取反,符号位不变

-5 的补码: 1 1111111 11111111 11111111 11111011 反码的末尾加 1

6 逻辑操作符

符号

描述

结果

&&


前者和后者都为 true 则结果为 true 其他为 false

||


前者或后者有一项为 true 则结果为 true 其他为 false



参数为true 则结果为 false , 参数为false 则结果为 true

&& 运算中,若前者为 false , 则后续不再运行,结果为false 。

7 按位操作符

按位操作符用来操作整数基本数据类型的单个"比特",即二进制位。

符号

描述

结果

&


如果2个输入位都为 1 ,则结果为 1 ;否则生成输出位 0 。 1 & 1 = 1 1 & 0 = 0

|


如果2个输入位中有1个为 1 ,则结果为 1 ;否则生成输出位 0 。

^

异或

如果2个输入位中有1个为 1,另1个为 0 ,则结果为 1 ;否则生成输出位 0 。

~


取反操作符 1 结果为0 ; 0 结果为1 。

或 : 1 | 1 = 1 ; 1 | 0 = 1 ; 0 | 0 = 0 。

异或 : 1 ^ 0 = 1 ; 1 ^ 1 = 0 。

8 移位操作符

移位操作符只能处理整数类型

符号

描述

<<

左移操作符 按照操作符右侧指定的位数将操作符左边的操作数向左移动,低位补0

>>

右移操作符 按照操作符右侧指定的位数将操作符左边的操作数向右移动,若符号为正 则高位插入0 符号为负 则高位插入1。

>>>

无符号右移操作符 按照操作符右侧指定的位数将操作符左边的操作数向右移动,高位插入0。

1 << 2 将1左移2位 1转二进制 为 1 , 左移2位得 100二进制 转为十进制 值为4

8 >> 3 将8右移3位 8转二进制 为 1000 右移3位为1 ,转为十进制值为1。

9 指数计数法

System.out.println("Float.MAX_VALUE = " + Float.MAX_VALUE);
打印的值为 Float.MAX_VALUE = 3.4028235E38

该值代表 3.4028235 * 10 38