-4

正在使用

( Condition A or Condition B and Condition C )

一样

( Condition A and Condition C) OR (Condition B and Condition C)

4

3 回答 3

3

不,第一个条件是:

(Condition A) OR (Condition B and Condition C)

第二个是:

(Condition A and Condition C) OR (Condition B and Condition C)

您可以清楚地看到它们之间的区别。

于 2013-08-19T16:21:50.250 回答
1

第一个表明aB and C必须匹配

第二个表明a and cORb and c是必须匹配的

(A) 或 (B 和 C) *IS NOT* (A 和 C) 或 (B 和 C)

希望这更有意义..

于 2013-08-19T16:25:46.833 回答
1

这里的根本问题是在混合运算符时应该包含括号。因为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))

于 2013-08-19T16:56:51.643 回答