gpt4 book ai didi

java - Java 如何处理单个 IF 语句中的多个条件

转载 作者:搜寻专家 更新时间:2023-10-30 21:13:27 26 4
gpt4 key购买 nike

假设我有这个:

if(bool1 && bool2 && bool3) {
...
}

现在。如果 bool1 被评估为 false,Java 是否足够聪明以跳过检查 bool2 和 bool3? java甚至从左到右检查它们吗?我问这个是因为我正在按执行它们所需的时间对 if 语句中的条件进行“排序”(从左边最便宜的条件开始)。现在我不确定这是否会给我任何性能优势,因为我不知道 Java 如何处理这个问题。

最佳答案

是的,Java(类似于其他主流语言)使用 懒惰求值 短路,这意味着它求值尽可能少。

这意味着下面的代码是完全安全的:

if(p != null && p.getAge() > 10)

此外,a ||如果 a 的计算结果为 true,b 永远不会计算 b

关于java - Java 如何处理单个 IF 语句中的多个条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8572565/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com