我的代码中有三元运算符,我不想从三元运算符中返回任何值...
我可以写一个三元运算符,返回值为 void ...
示例:
int a = 10;
int b = 20;
我可以写为
(a<b ? a+=b : a-=b);
它显示错误,如
The left-hand side of an assignment must be a variable
谢谢......
答案 0 :(得分:7)
我可以编写一个返回值为null
的三元运算符
不,你不能。
你可以做的事情是:
a = a<b ? a+b : a-b;
甚至:
a += a<b ? b : -b;
答案 1 :(得分:4)
不,三元运算符本身就是表达式,所以它必须求值。 a += b;
是语句,将其置于三元组中并不具有语法意义。
无论
a += a < b ? b : -b;
或
if
,else
。在工程代码中,(1)非常惯用。