首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >Java有惰性计算吗?

Java有惰性计算吗?
EN

Stack Overflow用户
提问于 2013-03-04 02:31:59
回答 8查看 40.6K关注 0票数 32

我知道Java在这种情况下有智能/懒惰的评估:

代码语言:javascript
运行
复制
public boolean isTrue() {
    boolean a = false;
    boolean b = true;
    return b || (a && b); // (a && b) is not evaluated since b is true
}

但是如果这样呢:

代码语言:javascript
运行
复制
public boolean isTrue() {
    boolean a = isATrue();
    boolean b = isBTrue();
    return b || a;
}

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

EN

Stack Overflow用户

发布于 2013-03-04 02:33:52

不,它不是。无论isATrue()的结果如何,都将调用isBTrue()。您可以通过编写这样的程序来验证这一点,并在每个方法中使用print语句。

票数 0
EN
查看全部 8 条回答
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/15189209

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档