问题描述
|
我有一个简单的问题令我感到困惑。我试图在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);
...一开始比较简单。