Java中的逻辑运算符(java新特性)[复制]

e0bqpujr  于 2023-01-29  发布在  Java
关注(0)|答案(1)|浏览(141)
    • 此问题在此处已有答案**:

precedence of && and || operators in java(8个答案)
3小时前关闭.

public class PrintLine{
    public static void main(String args[]){
    System.out.println(27 % 4 == 0 && 500 / 100 != 5 || true);
    }

}

如果两个操作数都为假,为什么输出true?应该遵循哪条规则&&(逻辑与)或||(逻辑或)
有人能给我分解一下吗?我是Java新手。

xdnvmnnf

xdnvmnnf1#

因为||的优先级低于&&

System.out.println(27 % 4 == 0 && 500 / 100 != 5 || true);

相当于:

System.out.println(((27 % 4 == 0) && (500 / 100 != 5)) || true);

(false && false) || true以及更一般地X || true是 * 总是 * 真的;类似地,X && false是 * 总是 * 假的(如同false && (true || true)一样)。

相关问题