黑马程序员技术交流社区

标题: a++问题 [打印本页]

作者: 笑对明天    时间: 2017-2-15 00:37
标题: a++问题
int a=10;
a=a++;
System.out.println(a);
输出结果:10
原因分析:可以看成:int a=10;
int b=a++;//该句运行完成后b=10,a=11;
a=b;
注释:a=a++相当于a被赋值了三次,第一次是b=a赋值,第二次是a++(即a=a+1);第三次是a=b(将原本的11覆盖了)
作者: jxsryqt    时间: 2017-2-15 02:56
这个6

作者: 烟雨清寒时    时间: 2017-2-15 08:07
写个空项目观察一下就好了,记得脑袋都大了

作者: J领域的王者    时间: 2017-2-15 08:18
还好这个我能理解,共同努力吧!

作者: dongdzhu    时间: 2017-2-15 12:02
后++直接赋值,输出,但是最终a变成了11

作者: xiaoyizi    时间: 2017-2-15 12:28
学习了

作者: 桥台    时间: 2017-2-15 13:51
后a=a++其实在内存中的运算过程是,a++之前先在内存中预存一个a的值然后再++,而到了赋值的时候他就把原来预存在内存中的a赋值给a.

作者: yourtear    时间: 2017-2-15 17:35
11111111111111




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2