Java之短路运算符简介说明
下文笔者讲述短路运算符的简介说明,如下所示
短路运算符简介
常见的短路运算符:
短路与:&&
短路或:||
如:多个短路运算
-------------------------------------------
两个:(逻辑1 && 逻辑2)
多个:(逻辑1 && 逻辑 2 && 逻辑3 &&……)
-------------------------------------------
两个:(逻辑1 || 逻辑2)
多个:(逻辑1 || 逻辑 2 || 逻辑3 ||……)
-------------------------------------------
逻辑与(短路与) &&
两边同时为true,则为true。 有一方为false,则为false。 左边为false,右边不执行,为false。 当第一个操作数已经能够确定表达式为false,则自动停止,第二个就不再进行运算判断。例:
int a = 3; int b = 3; System.out.println(a++ == 10 && ++b == 10);//false System.out.println(a);//4 System.out.println(b);//3 由于a++的运算为先使用a的值再自加 当3==10的结果为false,则第一个表达式为false时在短路与中,第二个表达式不运行 没走到第二个表达式,那么b也就没运算,b得值还是3
逻辑或 ||
两边同时为false,则为false。 有一方为true,则为true。 左边为true,右边不执行,为true。 如果第一个操作数已经能够确定表达式为true,则自动停止,第二个就不再进行运算判断
int x = 3;
int y = 3;
System.out.println(x++ == 3 || ++y==10);//true
System.out.println(x);//4
System.out.println(y);//3
当x++的运算为先使用x的值再自加,所以3==3的结果为true
第一个表达式为true时在短路或中,第二个表达式不执行;
代码未运行到第二个表达式,则y也就没运算,y得值还是3;
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。


