短路运算
(针对&&和||这两个运算符)
举例:
(1)定义两个int型整数,并通过表达式形式进行输出:
int a = 10;
int b = 20;
System.out.println( a>10 && b++<=20);
输出结果为:
false
(a>10)结果为false,现在不确定后面的(b++<=20)能不能执行,将b输出进行查看:
System.out.println( a>10 && b++<=20);
System.out.println(b);
输出结果为:
false
20
这说明表达式(b++<=20)没有执行,我们更改一下输出方式:
System.out.println( a>=10 && b++<=20);
System.out.println(b);
输出结果为:
true
21
b输出的值是21,这说明(b++<=20)成立,并且也执行了b++的操作。
总结:
(1)当采用 && 时,如果前面的表达式不成立,后面的表达式将不会执行。
(2)当采用 || 时,如果前面的表达式成立,后面的表达式不需再执行。
单个 &、| 符号就不一样了:
(1)当采用单个 & 时,即便是前面的表达式是错误的,后面的表达式仍会执行。
(2)当采用和单个 | 时,前面表达式成立,后面的表达式仍会执行。