1、逻辑运算的操作数和运算结果都是boolean值(true/false)。
2、逻辑运算符
运算符 | 说明 | |
逻辑与 | &( 与) | 两个操作数为true,结果才是true,否则是false |
逻辑或 | |(或) | 两个操作数有一个是true,结果就是true |
短路与 | &&( 与) | 只要有一个为false,则直接返回false |
短路或 | ||(或) | 只要有一个为true, 则直接返回true |
逻辑非 | !(非) | 取反:!false为true,!true为false |
逻辑异或 | ^(异或) | 相同为false,不同为true |
3、 短路与和短路或采用短路的方式。从左到右计算,如果只通过运算符左边的操作数就能够确定该逻辑表达式的值,则不会继续计算运算符右边的操作数,提高效率。
4、【示例2-22】短路与和逻辑与
1
2
3
4
5
6
|
//1>2的结果为false,那么整个表达式的结果即为false,将不再计算2>(3/0)
boolean
c =
1
>
2
&&
2
>(
3
/
0
);
System.out.println(c);
//1>2的结果为false,那么整个表达式的结果即为false,还要计算2>(3/0),0不能做除数,//会输出异常信息
boolean
d =
1
>
2
&
2
>(
3
/
0
);
System.out.println(d);
|
5、测试代码:
(1)&的情况
(2)短路与&&的情况