繁体   English   中英

三元运营商不在Android工作

[英]Ternary operator not working in Android

我有一个让我困惑的简单问题。 我试图在java中使用三元运算符。 我是Android和java的新手。 这段代码给了我错误:

amt < 0 ? lendBtn.setChecked(true) : lendBtn.setChecked(false);

"Syntax error on token "<", invalid AssignmentOperator"

所以,我用if语句替换它,它完全有效:

if (amt < 0) { ... }

这不是什么大问题,但有谁知道为什么?

这与Android无关。 您不能将条件表达式作为语句使用...而且第二个和第三个操作数也不能是void表达式。

你应该使用:

lendBtn.setChecked(amt < 0);

......开始时更简单。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM