class richang{
public static void main(String[] args){
boolean x = true;
boolean y = false;
short z = 42;
if(y == true)//false
if((z++==42)&&(y=true))z++;//false
if((x=false)||(++z==45)) z++;/*(求大佬告诉我这一行的逻辑
,我已经绕蒙了)*/
System.out.println("z=" + z);
}
}

if((z++==42)&&(y=true))z++;属于 if(y == true)的代码块,因为y是false,所以if(y == true)不成立,if((z++==42)&&(y=true))z++;这个代码段不执行。
执行 if((x=false)||(++z==45)) z++;
过程如下:
(1)x=false
(2)++z, z变成43
(3)z==45不成立,结果是false
(4)x || false ,两个false或运算,结果还是false ,所以if((x=false)||(++z==45)) 这个if不成立,z++不执行。
所以,最后z的值是43