【问题标题】:Two condition while loop两个条件while循环
【发布时间】:2014-05-02 23:40:39
【问题描述】:
while( first1<=last1 || first2<=last2 )

while( first1<=last1 && first2<=last2 )

我只是想确保我是正确的。对于“或”条件,这意味着它只需要其中一个为真才能进入while循环,而“and”条件需要两者都为真才能进入while循环?我第一次在 if 语句中看到“and”和“or”操作,所以我有点困惑。

【问题讨论】:

    标签: java loops while-loop operands


    【解决方案1】:

    是的! && 和 ||就像在 if 语句中一样工作。其实可以把while循环的条件理解为if语句——if条件为真,进入循环

    【讨论】:

    • 没问题!为了将来参考,&amp;&amp;||^ 可用于任何两个布尔操作数,因此您甚至不必在 if 语句中使用它们。你可以做类似boolean studentPassed = studentGrade &gt;= 75 &amp;&amp; studentAttendance &gt;= 0.80
    【解决方案2】:

    这是一个典型的java短路例子。

    int x = 14;
        while(x>10 && x<50)
    

    在此语句中,第一部分为真,但对于 and 语句,两个操作数都必须为真才能执行。现在它会查看下一个正确的方面,因此 while 循环将执行。如果 x 是 -11,那么第一部分将是错误的,并且它甚至不会看另一边,因为该陈述已经是错误的。 or (||) 也是如此。或者左边为真时会短路,然后它甚至不看另一边。

    【讨论】:

      【解决方案3】:

      它们的工作方式与 if 语句中的完全相同,位置无关紧要。
      以下是一些需要澄清的真值表。

      a      b       a OR b   a AND b
      false  false | false  | false
      false  true  | true   | false
      true   false | true   | false
      true   true  | true   | true
      

      【讨论】:

        猜你喜欢
        • 2015-06-18
        • 2017-03-04
        • 1970-01-01
        • 2014-02-13
        • 2011-11-02
        • 2015-12-16
        • 1970-01-01
        • 2017-11-01
        • 2019-03-08
        相关资源
        最近更新 更多