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