标签:兄弟连 特殊 表达式 pre 三目运算符 语句 需要 布尔 else
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。
标签:兄弟连 特殊 表达式 pre 三目运算符 语句 需要 布尔 else
原文地址:https://www.cnblogs.com/itxdl/p/11261956.html