close
&&與|| 是屬於條件運算子 Conditional Operators
&, ^, | 是屬於位元運算子 Bit Operators
當用在boolean運算時
&& 是 由左往右, 當遇到false時就直接成立, 不繼續往後判斷
|| 是 由左往右, 當遇到true時就直接成立, 不繼續往後判斷
而
& 則必須計算左右兩邊的boolean值, 然後返回計算結果
x | y | 結果 |
true | true | true |
true | false | false |
false | true | false |
false | false | false |
| 則必須計算左右兩邊的boolean值, 然後返回計算結果
x | y | 結果 |
true | true | true |
true | false | true |
false | true | true |
false | false | false |
^ 則必須計算左右兩邊的boolean值, 然後返回計算結果
x | y | 結果 |
true | true | false |
true | false | true |
false | true | true |
false | false | false |
1. 官網https://docs.oracle.com/javase/tutorial/java/nutsandbolts/opsummary.html
2. 舉個程式的例子 5/0 是唯法的, 但由於是用&&的關係
所以判斷式左邊為false就不會繼續往下執行了
int a = 0;
int b = 5;
if((a > 0) && (b/a == 0)){
System.out.println("true");
}else{
System.out.println("false");
}
3. 而如果改成&則必須計算完返回結果
所以會出現錯誤
int a = 0;
int b = 5;
if((a > 0) & (b/a == 0)){
System.out.println("true");
}else{
System.out.println("false");
}
文章標籤
全站熱搜