& 逻辑与, | 逻辑或 && 短路与, || 短路或
1、 逻辑运算符要求两边的算子都是布尔类型,并且逻辑运算符最终的运算结果也是一个布尔类型。
2、 短路与和逻辑与最终的运算结果是相同的,只不过短路与存在短路现象。
短路或和逻辑或最终的运算结果是相同的,只不过短路或存在短路现象。
* 逻辑与:
int x = 10;
int y = 8;
System.out.println( x < y & ++x < y);
System.out.println(x);
输出结果为 false
11
* 短路与:
int x = 10;
int y = 8;
System.out.println( x < y && ++x < y);
System.out.println(x);
输出结果为 false
10
x < y 结果是false,整个表达式结果已经确定是false,所有后面的表达式没有再执行,这种现象被称为短路现象,短路与才会有短路现象。
3、 什么情况下会发生短路或,短路与?
第一个表达式执行结果是true,会发生短路或。
第一个表达式执行结果是false,会发生短路与。