有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

从if语句的第一部分返回后的java Else

library的BigInteger.gcd(...)方法的实现从以下语句开始:

public BigInteger gcd(BigInteger val) {
    if (val.signum == 0)
        return this.abs();
    else if (this.signum == 0)
        return val.abs();
    ...
}

在这种情况下,else关键字的用途是什么?它只是程序员忘记删除的旧代码的一部分,还是以某种方式影响了性能

我理解,在语义上,在这个特殊情况下,有else和没有else的版本是相同的。然而,我经常面临着两种选择

<Some method signature>(...) {
    if (...) {
        <Short branch>
        return ...;
    } else {
        <Long branch>
        return ...;
    }
}

<Some method signature>(...) {
    if (...) {
        <Short branch>
        return ...;
    }
    <Long branch>
    return ...;
}

哪个选项在性能方面更好(请注意,这个问题是特定于Java的)?如果两种情况下的性能几乎相同,那么哪一种在可读性方面更好


共 (0) 个答案