条件运算符行为

use*_*736 2 java conditional operator-keyword

任何人都可以解释下面代码输出背后的逻辑吗?

    if(true||false&&false){
        System.out.println("right to left ");
    }
    if (false && true||true){
        System.out.println("left to right");
    }
Run Code Online (Sandbox Code Playgroud)

Kep*_*pil 5

如果您查看此运算符优先级表,您可以看到&&优先级高于||.

因此,这两个表达式的计算方式如下:

true || false && false== true || (false && false)==true

false && true || true == (false && true) || true ==true