答案 0 :(得分:3)
由于优先级,它的评估为
(a || ( b && c))
如果您添加括号(手动),则会先判断括号,然后更改所有内容。
如果你写
((a || b) && c)
那很重要!
答案 1 :(得分:2)
你应该在测试脚本中尝试一下,但是如果wiki说AND具有更高的优先级,那么我认为首先调用b&&c
。
答案 2 :(得分:1)
AND
优先于JAVA中的OR
。因此(b && c)
应该在表达式(a||b)
a || b && c
之前计算出来
选中此列表以获取完整列表:
http://docs.oracle.com/javase/tutorial/java/nutsandbolts/operators.html
从链接中获取快照:
答案 3 :(得分:1)
因为AND具有更高阶的优先级,所以首先评估(b& c),然后将其结果与a进行OR运算。换句话说,这相当于|| (b&& c)
答案 4 :(得分:0)
这是非常简单的答案,它首先评估b& c,因为 AND 操作的优先级高于 OR 操作。
让我用一个更为人熟知的关于优先权的例子来解释,
我们取5 + 2 * 2
我们都知道2 * 2是第一个评估,然后5将被添加到4(2 * 2)。同样,逻辑中的评估顺序也是如此,这是您必须遵循的标准。 :)