有没有可能出现这样的情况?
if(a == b == c)
或者是
if((a== b) && (b == c))
唯一的方式是什么?
或者有什么更酷的方法来实现这个目标吗?
if(a == b == c)
或者是
if((a== b) && (b == c))
唯一的方式是什么?
或者有什么更酷的方法来实现这个目标吗?
a == b == c
大致相当于表达式 a == b and b == c
,但是 b 仅被计算一次。boolean temp = (a == b);
if (temp == c) {
// ...
}
这并不是您想要的结果。在Java中,a == b == c
语句只有在c
为布尔类型时才能编译通过。
public static boolean areTheyEqual(int... a) {
int VALUE = a[0];
for(int i: a) {
if(i!= VALUE)
return false;
}
return true;
}
要从三个数字中获取最大值,可以使用一行代码:
int max = (a > b && a > c) ? a : ((b > a && b > c) ? b : c);