有关Java中三元运算符的详细信息,请参见本文。 写得很好。 Java三元运算符详细信息
这里补充总结一下:
对于Java三元运算符:
(条件式)? 式1 :式2;三元运算符要求必须有返回值,即表达式1和表达式2要求必须能return,所以不能在表达式1或表达式2中书写输出语句等。基于此,三元运算符不能独立成句,它就如同一个变量,可以出现在方法参数中、用在赋值语句=的右侧等地方,总之不能独立成句。**
以下是一些例子作为参考。
inta=(12 )? 1 : 2; //合法int x=2,y=5; //(xy? (x-=y ) : ) x=y ); //不合法int z=x=y? (x =y ) : ) y-=x ); //合法的system.out.println(z; //3//2 3? (x=4) : ) x=5); //不合法int p=2 3? (x=4) : ) x=5); //合法的system.out.println(p; //4system.out.println(2) 3? (x=4) : ) x=5); //合法//4同时,Python语言不需要三元运算符返回值,三元运算符可以是独立的语句。 例如,以下三句都是合法的。
print(a(win ) ) if 100200 else print (lose ) )合法# wina=100 if 100 200 else 200 #合法print ) # 100100 if 100 200 else 200 #合法()