Java学习三、运算符

目录

一、算术运算符

二、自增/自减 运算符

三、关系运算符

四、逻辑运算符

1.逻辑与  &&

2.逻辑或  ||

3.逻辑非   !

短路求值

五、位运算符

1.按位与   &

2.按位或   |

3.按位取反

4.按位异或

六、移位运算符

七、条件运算符


一、算术运算符

基本的算术运算符:+、-、*、/、%

注意:

/与%的右操作数不能为0。

int / int的结果还是int类型,而且会向下取整。

Java中,小数也可以使用%。

两侧操作数类型不一致时,向类型大的提升。

二、自增/自减 运算符

++、--

前置++,先++,再使用。后置++,先使用,再++。

三、关系运算符

>、<、==、!=、>=、<=,结果为true或false。

注意:需要多次判断时,如3 < a < 5需要用到逻辑运算符。

四、逻辑运算符

1.逻辑与  &&

左右都为true,结果才是true。

2.逻辑或  ||

左右有一个为true,即为true。

3.逻辑非   !

真变假,假变真。

短路求值

&& 和 || 遵守短路求值的规则.

System.out.println(10 > 20 && 10 / 0 == 0);             // 打印 false
System.out.println(10 < 20 || 10 / 0 == 0);             // 打印 true

我们都知道, 计算 10 / 0 会导致程序抛出异常. 但是上面的代码却能正常运行, 说明 10 / 0 并没有真正被求值.

注意:

对于 && , 如果左侧表达式值为 false, 则表达式结果一定是 false, 无需计算右侧表达式.

对于 ||, 如果左侧表达式值为 true, 则表达式结果一定是 true, 无需计算右侧表达式. & 和 | 如果表达式结果为 boolean 时, 也表示逻辑运算. 但与 && || 相比, 它们不支持短路求值。

五、位运算符

位运算符主要操作的是数据的二进制比特位,主要有四个:&、|、~、^

1.按位与   &

二进制位相同为0,相异为1

2.按位或   |

二进制位只要有一个为1即为1,否则为0.

3.按位取反

除符号位外按位取反

4.按位异或

二进制位相同为0,相异为1

六、移位运算符

1.左移<<:最左侧不要,最右侧补0.

2.右移>>:最右侧不要,最左侧补符号位(整数补0,负数补1)

3.无符号右移>>>:最右侧不要,最左侧补0

注意:移动负数位或移位位数过大都没有意义。

七、条件运算符

表达式1 ? 表达式2 : 表达式3

表达式1为true时,整个表达式的值为表达式2,否则为表达式3。

你可能感兴趣的:(Java,java)