结果等于 2
修改代码,你比较容易理解
int a = 1;
int b=0;
int c=0;
b= a++; /* 此处b=1 a的初始值1赋值给b,a再后子增1就跟b 没关系了,运算完了你加你的,跟b没关系了。
这里我只是换了一个变量名来接收数据,跟你的a=a++是一个效果 */
c = ++b;/* 此处b已经的值已经是1了 ,上一句赋给它的,然后因为++放前面,先自增1 所以b=2 然后再赋值
给c, 这里一样 我换了一个变量名来接收数据 ,跟你的a=++a是一个效果 */
System.out.println(a);
System.out.println(b);
System.out.println(c);
你只要记住 a++ 参与运算的话 就是先用它原来的值 然后再加1
|