【问题标题】:how does java check conditions with logical operators [duplicate]java如何使用逻辑运算符检查条件[重复]
【发布时间】:2014-05-22 18:50:07
【问题描述】:

假设我有这样简单的事情:

if(condition_1 || condition_2) {
do something
}

如果 condition_1 为真,java 会继续检查 condition_2 吗? 我问是因为我知道条件 1 是否为真,条件 2 会抛出错误,我想知道是否需要制作两个单独的 if。

【问题讨论】:

  • 是的,我不知道短路以及如何搜索它。对不起

标签: java conditional-statements


【解决方案1】:
if(condition_1 || condition_2) 
if condition_1 is true, does java go on and also check condition_2?

不!

谷歌short circuiting 概念。

【讨论】:

    【解决方案2】:

    没有。 Java 使用short-circuiting 运算符:

    • if (condition1 || condition2) 仅当条件 1 为 false 时才会评估条件 2。
    • if (condition1 && condition2) 仅当条件 1 为 true 时才会评估条件 2。

    一般:只有在需要时才会评估第二个条件。

    有关更多信息,请参阅Java operators

    【讨论】:

      【解决方案3】:

      您也可以只使用一个| 令牌来检查这两个条件。

      if (trueField | isButtonDown()) {
          //
      }
      

      事件如果第一个为真,则调用该方法。有两个||,不会被调用。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2016-11-20
        • 1970-01-01
        • 1970-01-01
        • 2019-04-21
        • 2011-03-14
        • 2020-10-02
        相关资源
        最近更新 更多