&&比||的优先级高
书里给的是 a&&b||c 等价于 (a&&b)||c
那么 a||b&&c 是否等价于 a||(b&&c) 而不是(a||b)&&c? 带着这个疑问我开始了求证。
首先设计代码 用&& || 的短路特性来测试验证
int a=0,b=0,c=0;
System.out.println( (++a==1) || (b++==1) && (++c==1) );
System.out.println(a);
System.out.println(b);
System.out.println(c);
(++a==1) || (b++==1) && (++c==1)如果是 ( (++a==1) || (b++==1) )&& (++c==1) 【如果 || 优先级 比 &&高 的情况】
那么理论的结果应该是 a=1 b=0 c=1 因为b++ 被 || 短路了
如果 (++a==1) || ( (b++==1) &&