Java是否具有惰性求值?

27 浏览
0 Comments

Java是否具有惰性求值?

我知道在这种情况下,Java具有智能/惰性求值:

public boolean isTrue() {
    boolean a = false;
    boolean b = true;
    return b || (a && b); // (a && b)不会被计算,因为b是true
}

但是对于下面的情况呢:

public boolean isTrue() {
    boolean a = isATrue();
    boolean b = isBTrue();
    return b || a;
}

即使isBTrue()返回true,isATrue()会被调用吗?

0