[英]Java - Assigning variable in ternary operator - unexpected type error
我对编码和 Java 比较陌生。 我正在尝试使用三元运算符代替我的一些“if”语句。 当我将下面的代码编写为 if/else 时,它工作正常,但是当我按原样运行它时,我得到了
unexpected type
required: variable
found: value line:3
你不能通过三元赋值,还是我做错了? 提前致谢!
int front;
nums.length>4 ? front = 4 : front = nums.length;
在 Java 中,三元运算符是一个“赋值”运算符,这意味着“总是”运算的结果必须赋值给一个变量。
目标变量在符号“=”的左侧(像往常一样),而运算符在右侧。 正如你所说,它只是作为 if/else 工作。 结构是这样的:
<destination_variable> = <condition> ? <value_if_cond_true> : <value_else>
因此,在您的特定情况下,三元运算符将编写如下:
int front = nums.length > 4 ? 4 : nums.length;
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.