Java逻辑运算符(&&、||和!)


逻辑运算符,把多个条件联合判断,用来判断条件是否成立。举例子,小明大于10岁,且数学测试分数超过90分,才能参加全国数学竞赛。

比如

intage=12;intscore=97;if(age>10&&score>90){System.out.println("可以参加数学竞赛");}else{System.out.println("不可以参加数学竞赛");}

运算符用法含义说明实例结果

&&a&&b短路与ab 全为 true 时,计算结果为 true,否则为 false。3>1 && 3<5true

||a||b短路或ab 全为 false 时,计算结果为 false,否则为 true。3<1 || 3>5false

!!a逻辑非a 为 true 时,值为 false,a 为 false 时,值为 true!(2>4)true

|a|b逻辑或ab 全为 false 时,计算结果为 false,否则为 true1>3|3>5false

&a&b逻辑与ab 全为 false 时,计算结果为 false,否则为 true1<3&3<4true

1. Java逻辑运算符的优先级:!大于 && 大于 ||

2. 逻辑和短路的特点

判断效果其实一样, 但是最大的区别是短路与和短路或,的判断效率会高于逻辑与和逻辑或。所以编程中,尽量采用短路写法。

&& 与 & 区别:如果 a 为 false,则不计算 b(因为不论 b 为何值,结果都为 false)

|| 与 | 区别:如果 a 为 true,则不计算 b(因为不论 b 为何值,结果都为 true)

代码测试

System.out.println("短路与 3>1 && 3<5 返回:"+(3>1&&3<5));System.out.println("短路或 3<1 || 3>5 返回:"+(3<1||3>5));System.out.println("逻辑非 !(2>4)返回:"+!(2>4));

输出

短路与3>1&&3<5返回:true短路或3<1||3>5返回:false逻辑非!(2>4)返回:true

https://java-er.com/blog/java-and-logic-opertaion/

 


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM