自增自减运算符++、–是单目运算符,可以放在操作元之前,也可放在操作元之后。操作元必须是一个整形或浮点型变量。
++x(–x)表示在使用x之前,先使x的值增1(或减1)
x++(x–)表示在使用x之后,再使x得知增1(或减1)
下边测试各种情况:
public class test{
public static void main(String[] args){
int x=1,y=1,z=0;
System.out.println("初始值:x: "+x+" y: "+y+" z: "+z);
z=x++;
System.out.println("z=x++ "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=x+y++; //y参与完运算之后再+1
System.out.println("z=x+y++ "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=x+++y; //x参与完运算之后再+1
System.out.println("z=x+++y "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=(x++)+y;
System.out.println("z=(x++)+y "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=++x+y;
System.out.println("z=++x+y "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=(++x)+y;
System.out.println("z=(++x)+y "+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=x+(y++);
System.out.println("z=x+(y++)"+"x: "+x+" y: "+y+" z: "+z);
x=1;y=1;z=0;
z=x+(++y);
System.out.println("z=x+(++y) "+"x: "+x+" y: "+y+" z: "+z);
}
}
结果: