int x=1,y=1,z=1; if (x--==1&&y++==1||z++==1) System.out.println("x="+x+",y="+y+",z="+z); } }上面是public class test {public static void main(String args[]) {新手就、求详解
来源:学生作业帮助网 编辑:作业帮 时间:2024/07/12 01:17:18
![int x=1,y=1,z=1; if (x--==1&&y++==1||z++==1) System.out.println(](/uploads/image/z/8773054-70-4.jpg?t=int+x%3D1%2Cy%3D1%2Cz%3D1%3B+if+%28x--%3D%3D1%26%26y%2B%2B%3D%3D1%7C%7Cz%2B%2B%3D%3D1%29+System.out.println%28%22x%3D%22%2Bx%2B%22%2Cy%3D%22%2By%2B%22%2Cz%3D%22%2Bz%29%3B+%7D+%7D%E4%B8%8A%E9%9D%A2%E6%98%AFpublic+class+test+%7Bpublic+static+void+main%28String+args%5B%5D%29+%7B%E6%96%B0%E6%89%8B%E5%B0%B1%E3%80%81%E6%B1%82%E8%AF%A6%E8%A7%A3)
int x=1,y=1,z=1; if (x--==1&&y++==1||z++==1) System.out.println("x="+x+",y="+y+",z="+z); } }上面是public class test {public static void main(String args[]) {新手就、求详解
int x=1,y=1,z=1; if (x--==1&&y++==1||z++==1) System.out.println("x="+x+",y="+y+",z="+z); } }
上面是public class test {
public static void main(String args[]) {
新手就、求详解
int x=1,y=1,z=1; if (x--==1&&y++==1||z++==1) System.out.println("x="+x+",y="+y+",z="+z); } }上面是public class test {public static void main(String args[]) {新手就、求详解
x=0,y=2,z=1
(x--==1&&y++==1||z++==1) 相当于((x--==1&&y++==1)||z++==1) )
x--==1 为true 执行后 x=0
双与 && 是前面的条件如果为true,后面的条件也要判断一次,所以y++==1也执行了
y++==1 为true 执行后 y=2
两个都为true,那么(x--==1&&y++==1)为true,
而双或 || 是前面的条件如果为true,后面的条件就不再判断,结果肯定是true.
所以z++==1并没有执行,z的值不变.