有没有办法在三元操作中实现这一点。我对这三元知识很陌生,也许您可以指导我。
if(selection.toLowerCase().equals("produkt"))
cmdCse.setVisible(true);
else
cmdCse.setVisible(false);
这个似乎无效。
selection.toLowerCase().equals("produkt")?cmdCse.setVisible(true):cmdCse.setVisible(false);
在这种情况下,您甚至不需要三元运算符:
cmdCse.setVisible(selection.toLowerCase().equals("produkt"));
或者,清洁工:
cmdCse.setVisible(selection.equalsIgnoreCase("produkt"));
您的版本:
selection.toLowerCase().equals("produkt")? cmdCse.setVisible(true): cmdCse.setVisible(false);
在语义上是不正确的:三元运算符应表示替代的赋值,它不能完全替代if
语句。还行吧:
double wow = x > y? Math.sqrt(y): x;
因为你要么分配x
或Math.sqrt(y)
到wow
,根据条件。
我的2cents:仅在使程序更清晰时才使用三元运算符,否则最终将得到一些难以理解的单线。
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句