JAVA逻辑运算符&和&&、|和||的区别(第6节)
逻辑运算符包括以下:
& 与运算符
&& 与运算符(可短路)
| 或运算符
|| 或运算符(可短路)
! 非运算符
^ 异或运算符
着重记录下&和&&、|和||的区别
&&左侧的表达式为false时,不会再执行右侧的表达式(即右侧的表达式被短路),但是&会一直执行左右两边的表达式
||左侧的表达式为true时,不会再执行右侧的表达式(即右侧的表达式被短路),但是|会一直执行左右两边的表达式
int x = 2; System.out.println((5<7) & (x++==2));// true System.out.println(x);// 3 int y = 2; System.out.println((5<7) & (++y==2));// false System.out.println(y);// 3 x = 2; System.out.println((5>7) && (x++==2));// false System.out.println(x);// 2 y = 2; System.out.println((5>7) && (++y==2));// false System.out.println(y);// 2