Java:这个三目运算符为什么报错呢?

int effect = 1; int add = 0; int update = 0; effect == 1 ? add++ : update++;
2025-01-21 11:35:43
推荐回答(3个)
回答1:

三目运行是有返回值的,应该这样写:
int effect = 1;
int add = 0;
int update = 0;
int test = effect == 1 ? add++ : update++;

回答2:

要注意一点,问好左边的赋值一定要是新定义变量,而且你这段代码写好以后如何使用呢?
建议加一个变量
int c=(effect==1)?add++:update++;
这样c就会被赋以判断以后的add++或者update++的值以供你引用了

回答3:

effect == 1 ? add: update;
改成这样就行了