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

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

int age = 12;
int score = 97;
 
if(age>10 && score > 90){
	System.out.println("可以参加数学竞赛");
}else{
	System.out.println("不可以参加数学竞赛");
}
运算符 用法 含义 说明 实例 结果
&& a&&b 短路与 ab 全为 true 时,计算结果为 true,否则为 false。 3>1 && 3<5 true
|| a||b 短路或 ab 全为 false 时,计算结果为 false,否则为 true。 3<1 || 3>5 false
! !a 逻辑非 a 为 true 时,值为 false,a 为 false 时,值为 true !(2>4) true
| a|b 逻辑或 ab 全为 false 时,计算结果为 false,否则为 true 1>3|3>5 false
& a&b 逻辑与 ab 全为 false 时,计算结果为 false,否则为 true 1<3&3<4 true

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


This entry was posted in JAVA and tagged . Bookmark the permalink.
月小升QQ 2651044202, 技术交流QQ群 178491360
首发地址:月小升博客https://java-er.com/blog/java-and-logic-opertaion/
无特殊说明,文章均为月小升原创,欢迎转载,转载请注明本文地址,谢谢
您的评论是我写作的动力.
2020.03.24 评论已经全局关闭,有事加QQ聊天