我在任何地方都找不到如何使用 ?运算符(operator)。 仅我所知道的:
boolean something = (!again) ? true : false;
这会返回true或false,但是如果我有带有break的if方法?像这样:
if(!again){
break;
}
我也可以这样做吗?运算符(operator) ?或者你知道更好的方法吗? 我在 while 循环中有这个方法。
我不知道该说些什么......只是我找不到。我几乎到处找。谢谢
感谢回复<3
最佳答案
条件运算符用作表达式的一部分。所以
x ? y : z
是一个表达式。您可以在任何需要表达式的地方使用它。然而,
if (some_condition) some_action;
是一个语句,一般来说,表达式和语句是不能互换的。因此,如果您想摆脱 if
语句,则无法使用 ?:
另一方面,some_condition
是一个( boolean )表达式,因此您可以编写:
if (x ? y : z) some_action;
只要 x、y、z 本身是 boolean 子表达式。所以按照你原来的说法,这是合法的:
if (!again ? true : false)
break;
但它是多余的并且减少到
if (!again)
break;
因此使用 ?:
运算符编写它具有负值。
关于java - 带有 "?"运算符的 if 语句并中断 java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54776908/