逻辑运算符、短路特性
逻辑运算符、短路特性
逻辑运算符: && 逻辑与 同真为真,一假则假
|| 逻辑或 一真则真,同假则假
! 逻辑非 取反:真为假,假为真
短路特性:
1、对于逻辑与来说,当第一个条件已经为假时,则表达式结果一定为假(同真为真,一假则假 ),此时不再执行第二个条件。例如:a && b 当a条件为假的时候,则b条件被短路,不再执行b条件,直接返回假。
2、对于逻辑或来说,当第一个条件已经为真时,则表达式结果一定为真(一真则真,同假则假 ),此时不再执行第二个条件。例如:a || b 当a条件为真的时候,则b条件被短路,不再执行b条件,直接返回真。
3、为了更好的理解短路特性,可学习一下下面的例子(例子是从网上找的,感谢其他博主的分享:https://blog.csdn.net/xyphf/article/details/78056966),试着写出2、3、4、6、7、8行的输出结果:
public class TestLogic{public static void main(String[] args){int ia = 3;int ib = 2;//先判断++ia == 3是否为假,如果为假,则++ib == 3被短路,一假则假boolean b3 = (++ia == 3 && ++ib == 3);// ①System.out.println("b3 = " + b3); //② falseSystem.out.println("ia = " + ia); //③ 4System.out.println("ib = " + ib); //④ 2System.out.println("-------------------------------");//先判断++ia == 5是否为真,如果为真,则++ib == 3被短路,一真则真boolean b4 = (++ia == 5 || ++ib == 3);//⑤System.out.println("b4 = " + b4); //⑥ trueSystem.out.println("ia = " + ia); //⑦ 5System.out.println("ib = " + ib); //⑧ 2}
}
如果文中有错误,希望能够指出,一同进步!
本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!
