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;
版权声明
本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。