黑马程序员技术交流社区

标题: java中++的问题 [打印本页]

作者: 宝安    时间: 2014-7-23 23:56
标题: java中++的问题
前几天老师给了这两行代码:
int a=2;
a=a++;
问a=?
结果是2,老师当时解释没解释清楚,求大神指导,a=a++;是怎么运行的

作者: 醉、倾鯎    时间: 2014-7-24 00:56
++是自增的概念
int a=2;
a=a++;
解读一下代码
第一行 创建一个基本数据类型int 变量名是a 赋值为2
a++是先赋值,再自增,所以等号后面的a赋值给了等号前面,然后自增了等号后面的,
所以输出a的时候,输出的是前面的a,所以数值不变
作者: dreamseekerkun    时间: 2014-7-24 01:15
楼上正解。。,。
作者: star5603    时间: 2014-7-24 10:28
m = n ++;n自增,但返回的是n的旧值。
所以a = a++;是a自增返回旧值,所以a还是为2.
作者: masai158    时间: 2014-7-24 10:42
sop(a++ + a +  ++a )
      2          3         4
能否对你有帮助
作者: 柠萌不    时间: 2014-7-24 12:03
a=a++就是先赋值再自增
如果是a=++a的话就是先自增后赋值,那么就a=3了




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