a++为先赋值再加1;而++a为先加1再赋值。
实例:
int x = 0;
int y = x++ + ++x;
System.out.println(x+" "+y);
System.out.println(x+y+ x++);
输出结果为:
2 2
6
解析
int y = x++ + ++x;整体执行顺序为先执行中间“+”左边的“x++”,再执行右边的“++x”。左边执行为y = 0 + ++x;先赋值为0然后x=x+1=1;右边执行完后为y=0 + 2;先加1再赋值。x=x+1=2。