跳轉到內容

布林表示式

100% developed
來自華夏公益教科書,開放書籍,開放世界

導航 語言基礎 主題: v  d  e )


布林值是評估為 truefalse 的值,由 boolean 資料型別表示。布林表示式與數學表示式非常相似,但您不使用 "+" 或 "-" 等數學運算子,而是使用 "==" 或 "!" 等比較或布林運算子。

比較運算子

[編輯 | 編輯原始碼]

Java 有幾個運算子可以用於比較變數。例如,您如何判斷一個變數的值是否大於另一個變數的值?答案:使用“大於”運算子。

以下是 Java 中比較運算子的列表

  • > : 大於
  • < : 小於
  • >= : 大於或等於
  • <= : 小於或等於
  • == : 等於
  • != : 不等於

要檢視這些運算子的使用方法,請檢視以下示例

Example 程式碼部分 3.37:比較。
int a = 5, b = 3;
System.out.println(a > b); // Value is true because a is greater than b
System.out.println(a == b); // Value is false because a does not equal b
System.out.println(a != b); // Value is true because a does not equal b
System.out.println(b <= a); // Value is true because b is less than a
Computer code 程式碼部分 3.37 的輸出
true
false
true
true

比較運算子可以用於任何基本型別(除了 boolean),但只有“等於”和“不等於”運算子適用於物件。這是因為小於/大於運算子不能應用於物件,但等價運算子可以。

Note 具體來說,==!= 運算子測試兩個變數是否指向同一個物件。物件將在本教程後面的“類、物件和型別”模組中進行介紹。

布林運算子

[編輯 | 編輯原始碼]

Java 布林運算子基於 布林代數 的運算。布林運算子直接對布林值進行操作。

以下是 Java 中四個常見布林運算子的列表

  • ! : 布林非
  • && : 布林與
  • || : 布林或
  • ^ : 布林異或

布林非運算子(“!”)將布林表示式的值取反。布林與運算子(“&&”)僅當運算子兩側的值都為真時才返回真。布林或運算子(“||”)僅當運算子兩側的值至少有一個為真時才返回真。布林異或運算子(“^”)僅當運算子兩側的值只有一個為真時才返回真。

為了展示這些運算子的使用方法,以下是一個示例

Example 程式碼部分 3.38:運算元。
boolean iMTrue = true;
boolean iMTrueToo = true;
boolean iMFalse = false;
boolean iMFalseToo = false;

System.out.println("NOT operand:");
System.out.println(!iMTrue);
System.out.println(!iMFalse);
System.out.println(!(4 < 5));
System.out.println("AND operand:");
System.out.println(iMTrue && iMTrueToo);
System.out.println(iMFalse && iMFalseToo);
System.out.println(iMTrue && iMFalse);
System.out.println(iMTrue && !iMFalse);
System.out.println("OR operand:");
System.out.println(iMTrue || iMTrueToo);
System.out.println(iMFalse || iMFalseToo);
System.out.println(iMTrue || iMFalse);
System.out.println(iMFalse || !iMTrue);
System.out.println("XOR operand:");
System.out.println(iMTrue ^ iMTrueToo);
System.out.println(iMFalse ^ iMFalseToo);
System.out.println(iMTrue ^ iMFalse);
System.out.println(iMFalse ^ !iMTrue);
Computer code 程式碼部分 3.38 的輸出
NOT operand:
false
true
false
AND operand:
true
false
false
true
OR operand:
true
false
true
false
XOR operand:
false
false
true
false

以下是布林運算子的真值表

a !a
true false
false true
a b a && b a || b a ^ b
true true true true false
true false false true true
false true false true true
false false false false false
有關簡化複雜邏輯的幫助,請參閱 德摩根定律

在 Java 中,布林邏輯有一個名為短路的有用屬性。這意味著表示式將僅根據需要進行評估。在表示式 (a && b) 中,如果 a 為假,則 b 不會被評估,因為無論如何表示式都將為假。以下是一個顯示第二個表示式不會自動檢查的示例

Example 程式碼部分 3.39:短路。
System.out.println((4 < 5) || ((10 / 0) == 2));
Computer code 程式碼部分 3.39 的輸出
true

要停用此屬性,可以使用 & 代替 &&,使用 | 代替 ||,但建議不要這樣做。

有關 &| 上的按位運算,請參閱 算術表示式


華夏公益教科書