Java 比较三个整数值
这样的事情有可能吗Java 比较三个整数值,java,javascript,Java,Javascript,这样的事情有可能吗 if(a == b == c) 或者是 if((a== b) && (b == c)) 这是唯一的办法吗 或者最酷的方法是什么?在某些语言中,你可以使用速记。例如,在Python中,a==b==c大致等同于表达式a==b和b==c,只是b只计算一次 但是,在Java和Javascript中,不能使用短版本——必须像第二个示例中那样编写它。第一个示例大致相当于以下内容: boolean temp = (a == b); if (temp == c) {
if(a == b == c)
或者是
if((a== b) && (b == c))
这是唯一的办法吗
或者最酷的方法是什么?在某些语言中,你可以使用速记。例如,在Python中,a==b==c大致等同于表达式a==b和b==c
,只是b只计算一次
但是,在Java和Javascript中,不能使用短版本——必须像第二个示例中那样编写它。第一个示例大致相当于以下内容:
boolean temp = (a == b);
if (temp == c) {
// ...
}
这不是你想要的。在Java中,除非
c
是布尔值,否则a==b==c甚至不会编译。在JavaScript中,最安全的选择是a==b&&b==c
。我总是避免使用==
,而是为了自己的理智而使用==
在java中-我们没有==快捷方式操作符。因此,我们最终要做的是个人平局
但是如果你认为你需要大量的函数<<强>变化< /强>参数的数量,我会考虑实现像这样的函数。以下是未处理异常情况的示例代码
public static boolean areTheyEqual(int... a) {
int VALUE = a[0];
for(int i: a) {
if(i!= VALUE)
return false;
}
return true;
}
要从三个数字中获取最大值,请使用单线法:
intmax=(a>b&&a>c)?a:((b>a&b>c)?b:c)在Scala中,您可以使用元组进行以下操作:
(a,b)==(c,c)
这将检查a==c
和b==c
,即与a==b==c