運算子 | 功能 | 範例 |
---|---|---|
&& | 邏輯且 | a && b |
|| | 邏輯或 | a || b |
?: | 條件選擇 | a ? b : c |
這裡須注意,只有布林值可以做條件邏輯且及邏輯或的運算,通常關係運算會得到布林值,因此常會以多組關係運算子 (retional operator) 的運算式 (expression) 利用條件運算子建構更複雜的運算式。
以下為邏輯且的例子
class ConditionAndDemo { public static void main(String[] args) { int a = 12; int b = 22; if (a > b && a != b) { System.out.println("a > b"); } if (a < b && a != b) { System.out.println("a < b"); } } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ConditionAndDemo.java 功能:示範條件運算子的使用 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
以下為邏輯或的例子
class ConditionOrDemo { public static void main(String[] args) { int a = 12; int b = 22; if (a > b || a != b) { System.out.println("yes, a > b || a != b"); } if (a < b || a != b) { System.out.println("yes, a < b || a != b"); } } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ConditionOrDemo.java 功能:示範條件運算子的使用 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
條件選擇運算子是唯一一個三元運算子,需要三個運算元,三個運算元皆可為運算式,如下圖
例子如下
class ConditionalDemo { public static void main(String[] args) { int a = 12; int b = 22; int c = a > b ? a : b; System.out.println("a = " + a); System.out.println("b = " + b); System.out.println(c + " 較大"); } } /* 《程式語言教學誌》的範例程式 http://pydoing.blogspot.com/ 檔名:ConditionalDemo.java 功能:示範條件運算子的使用 作者:張凱慶 時間:西元 2010 年 10 月 */
編譯後執行,結果如下
中英文術語對照 | |
---|---|
條件運算子 | conditional operator |
三元運算子 | ternary operator |
關係運算子 | retional operator |
運算式 | expression |
參考資料
http://download.oracle.com/javase/tutorial/java/nutsandbolts/op2.html
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html
http://download.oracle.com/javase/tutorial/java/nutsandbolts/op2.html
http://java.sun.com/docs/books/jls/third_edition/html/expressions.html
沒有留言:
張貼留言