java 逻辑运算符
-
逻辑运算符: 指把各个运算的关系表达式连接起来组成一个复杂的逻辑表达式,以判断程序中的表达式是否成立,判断的结果是布尔值(boolean)
-
逻辑运算符
-
与(并且) && :全都是true,才是true;否则就是false
条件A && 条件B && 条件C ····
例如 X=2 X>1 && X<3 ----> true
局部代码展示System.out.println(true && true); // ture System.out.println(true && false); // false
-
或(或者) || 至少一个是true,就是true;全都是false,才是false
条件A || 条件B || 条件C ····
例如 X = 10 X > 11 || X < 20 ----> ture
局部代码展示System.out.println(true || false); // true System.out.println(true || true); // true System.out.println(false || false); // false
-
非(取反) ! 本来是true,变成false;本来是false,变成true
! 条件A
例如 ! true —> falseSystem.out.println(true); // true System.out.println(!true); // false
-
-
逻辑运算中的短路:
与“&&”,或“||”,具有短路效果:如果根据左边已经可以判断得到最终结果,那么右边的代码将不再执 行,从而节省一定的性能。
代码验证:int a = 10; // false && ... System.out.println(3 > 4 && ++a < 100); // false System.out.println(a); // 10
解释 由于3 > 4 —>false 所以 ++a 未执行 所以打印出10
-
注意事项
- 逻辑运算符只能用于boolean值。
- 与、或需要左右各自有一个boolean值,但是取反只要有唯一的一个boolean值即可。
- 与、或两种运算符,如果有多个条件,可以连续写。
两个条件:条件A && 条件B
多个条件:条件A && 条件B && 条件C - top:
对于1 < x < 3的情况,应该拆成两个部分,然后使用与运算符连接起来:
int x = 2;
1 < x && x < 3