IT兄弟連 Java語法教程 三目運算符

  • 2019 年 10 月 5 日
  • 筆記

版權聲明:本文為部落客原創文章,遵循 CC 4.0 BY-SA 版權協議,轉載請附上原文出處鏈接和本聲明。

本文鏈接:https://blog.csdn.net/ITXDL123/article/details/95042435

Java提供了一個特殊的三目(三個分支)運算符,它可以替代特定類型的if-then-else語句結構。這個運算符是「?」乍一看可能有一些困惑,但一旦理解「?」運算符,就可以高效地使用它。「?」運算符的一般形式如下:

expression1 ? expression2 : expression3

其中expression1可以實任何結果為布爾值的表達式。如果expression1的結果為true,就對expression2進行求值;否則對expression3進行求值。「?」運算符的結果是對其進行求值的表達式。expression2和expression3都需要返回相同(或兼容)的類型,並且不能為void。

下面是使用「?」運算符的一個例子:

ratio = denom == 0 ? 0 : num/denom;

當Java對這條賦值語句進行求值時,首先分析「?」左側的表達式,如果denom等於0,就對問號和冒號之間的表達式進行求值,並將其作為整個「?」表達式的值。如果denom不等於0,就對冒號之後的表達式進行求值,並作為整個「?」表達式的值。「?」運算符產生的結果就會賦值給ratio。