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