java - 当我使用 && 运算符比较两组表达式时,是否必须加上内括号?
问题描述
对于这个表达式:
((a == b && b == c) && (a == b || b == c || a == c))
像下面这样写是否合法:
(a == b && b == c && a == b || b == c || a == c)
我想比较第一组和第二组。
a
,b
和c
是整数:
private int a;
private int b;
private int c;
解决方案
它是合法的,但它有不同的含义。
由于具有比从左到右关联的运算符&&
更高的优先级,因此您的第二个示例被解析为||
((a == b && b == c) && a == b) || b == c || a == c