是什么" 0"在条件运算符中代表什么?

时间:2018-05-20 13:28:21

标签: java

请考虑以下代码:

  i = (i == array.length-1) ? 0 : i + 1;

据我所知,条件运算符的工作原理如下:

booleanCondition ? executeThisPartIfBooleanConditionIsTrue : executeThisPartIfBooleanConditionIsFalse 

0执行什么?

2 个答案:

答案 0 :(得分:-1)

这被称为猫王操作员(见[https://en.wikipedia.org/wiki/Elvis_operator])并给出以下示例:

x = A ? B : C;

...这意味着,如果A被评估为“真实”'比x分配值B,否则分配值C.

在你的例子中,这意味着,如果' i == array.length-1'然后'我'被设置为' 0' 0否则'我'设置为' i + 1'。

答案 1 :(得分:-1)

我不认为"正面条件测试结果"真的有一个正式的名字。

https://docs.oracle.com/javase/tutorial/java/nutsandbolts/opsummary.html

  

?:三元(简写为           if-then-else statement)

使用布尔示例

isConditionTrue = 1 == 2 ? true : false;

这在你的例子中

i = (i == array.length-1) ? 0 : i + 1;

具有相同的结果
if (i == array.length-1)
{i= 0 ;}
else {i = i + 1;}