Ami*_* Al 12 java ternary-operator
假设我们遵循if语句:
int a = 1;
int b = 2;
if(a < b) {
System.out.println("A is less than B!");
}
else {
System.out.println("A is greater or equal to B!");
}
Run Code Online (Sandbox Code Playgroud)
我一直想知道如果三元运算符替换if语句if语句由每个子块中的一行代码(if和else块)组成,那么为什么上面的例子不可能用三元运算符这样写?
(a < b) ? System.out.println("A is less than B!") : System.out.println("A is greater or equal to B!");
Run Code Online (Sandbox Code Playgroud)
Pet*_*rey 21
您只能? :用于表达式,而不能用于语句.尝试
System.out.println(a < b ? "A is less than B!" : "A is greater or equal to B!");
Run Code Online (Sandbox Code Playgroud)
注意:这也更短/更简单.