有谁知道原因:
if (false && true || true) {
System.out.println("True");
} else {
System.out.println("False");
}
Run Code Online (Sandbox Code Playgroud)
打印" 真实 "
if (false && true | true) {
System.out.println("True");
} else {
System.out.println("False");
}
Run Code Online (Sandbox Code Playgroud)
打印" 假 "
Fai*_*roz 21
在第一种情况下,&&的优先级高于|| 运算符,因此表达式被计算为,if ( (false && true) || true )并且您得到True.
在第二种情况下,按位OR运算符的优先级高于&&所以表达式的计算结果为,if ( false && ( true | true ) )并且得到False.