请不要关注这里的条件,因为它们是为了方便理解行为而存在的。
为什么结果等于 true?
我知道我们可以通过以下方式解决这个问题:
为什么结果等于 true?
boolean result = false && (false)?false:true;
我知道我们可以通过以下方式解决这个问题:
boolean result = false && (false?false:true);
但我只是好奇为什么第一种语法不正确,看起来问号运算符比“&&”具有更高的优先级。
false && false // 因为两者都不为真,所以结果为 false
,而不是你重复的第二行。 - aradil