天天看點

java_邏輯運算符

1. 邏輯運算符: 與(&&)and 或(||)or 非(取反)

// && : 計算式兩邊的值都為true的情況,則整個計算式的結果才為true;
// || : 計算式有一邊的值為true的情況,則整個計算式的結果就為true;
// !  : 整個計算式的值為true的情況,則整個計算式的結果就為false;

      
1         // 邏輯運算符: 與(&&)and  或(||)or  非(取反)
2         boolean b1 = true;
3         boolean b2 = false;
4 
5         System.out.println("b1 && b2: " + ( b1 && b2 ));     // false
6         System.out.println("b1 || b2: " + ( b1 || b2 ));     // true
7         System.out.println("!(b1 && b2): " + !( b1 && b2 )); // true      

2. 短路運算符: 與(&&)and 或(||)or 

短路運算符就是從左到右的運算中前者滿足要求,就不再執行後者了; 可以了解為:

   &&為取假運算,從左到右依次判斷,如果遇到一個假值,就傳回假值,以後不再執行,否則傳回最後一個真值;

   || 為取真運算,從左到右依次判斷,如果遇到一個真值,就傳回真值,以後不再執行,否則傳回最後一個假值。

1         // 短路運算符
2         int c = 5;
3         boolean b3 = (c<4) && (c++ > 4);
4         boolean b4 = (c<4) || (c++ > 4);
5 
6         System.out.println("c< 4 ="  + (c<4));         // false
7         System.out.println("c++ > 4 ="  + (c++ > 4 )); // true
8         System.out.println("b3 = " + b3);              // false
9         System.out.println("b4 = " + b4);              // true