正在使用
( Condition A or Condition B and Condition C )
与
相同 ( Condition A and Condition C)
OR (Condition B and Condition C)
答案 0 :(得分:3)
没有。第一个条件是:
(Condition A) OR (Condition B and Condition C)
第二个是:
(Condition A and Condition C) OR (Condition B and Condition C)
您可以清楚地看到它们之间的区别。
答案 1 :(得分:1)
第一个表明
a
或B and C
必须匹配第二个表明
a and c
或b and c
必须匹配
(A)或(B和C)*IS NOT*
(A和C)或(B和C)
希望这会更有意义..
答案 2 :(得分:1)
这里的根本问题是,在混合运算符时应该包括parens。因为and
优先,正如所写,你要问是否
(A or (B and C))
相当于
((A and C) or (B and C))
......答案是否定的。在A, B, and C
分别为true, false, and false
的情况下,第一个条件的计算结果为true
,而第二个条件的计算结果为false
。
为了使它们等效,您可以在第一个表达式中添加括号,如下所示:
((A or B) and C)
在这种情况下,对于A, B, and C
的每个值组合,它将评估为与((A and C) or (B and C))
相同的值。