黑马程序员技术交流社区

标题: a++ 和 ++a 的区别 [打印本页]

作者: taoshan    时间: 2016-5-8 11:46
标题: a++ 和 ++a 的区别
1. a++ 是先赋值,然后a自增
2.++a  是a先自增,然后精心赋值运算
作者: 张狮子    时间: 2016-5-8 14:06
说的都很对
作者: 320215787    时间: 2016-5-8 14:53
不错是这样的
作者: 大大史莱姆    时间: 2016-5-8 14:55
嗯嗯,说的很对!!!
作者: 代码人生?!    时间: 2016-5-8 16:13
a=a++
system.out.println(a)
结果多少,为什么

作者: johnli    时间: 2016-5-8 16:17
加油加油
作者: zhxz521    时间: 2016-5-8 16:48
a++,先参与运算再自增1
++a,先自增1再参与运算
作者: 老司机喔    时间: 2016-5-8 18:45
int a=1;
        a=a++;
int b=a++;
s.o.p(b);
b是多少?
作者: a809431502    时间: 2016-5-8 19:54
对了~~~~
作者: lksirt    时间: 2016-5-8 20:49
。。。。。。。这也行。。。
作者: 冯领峰    时间: 2016-5-8 21:02
taoshan 发表于 2016-5-8 11:46
1. a   是先赋值,然后a自增
2.  a  是a先自增,然后精心赋值运算

y一个先赋值后运算,一个先运算后赋值
作者: wenle00    时间: 2016-5-8 22:34
好,加油加油!!!!!!!!!!!!!!!!!!!
作者: wh19900105    时间: 2016-5-9 00:04
好吧,你们赢了。。。。。。。
作者: z736886202    时间: 2016-5-9 00:09
加油吧  你们已经赢得世界
作者: 一念地狱    时间: 2016-5-9 01:44
本帖最后由 一念地狱 于 2016-5-9 01:52 编辑
代码人生?! 发表于 2016-5-8 16:13
a=a++
system.out.println(a)
结果多少,为什么

相当于语句
int temp=a;  
a++;      
a=temp;
输出结果为a

作者: 一念地狱    时间: 2016-5-9 01:49
本帖最后由 一念地狱 于 2016-5-9 01:53 编辑
老司机喔 发表于 2016-5-8 18:45
int a=1;
        a=a++;
int b=a++;

相当于语句
int a=1;
int temp1=a;   
a++;      
a=temp1;//此时a的值还是1
int temp2=a;//此时temp2的值是1
a++;         
int b=temp2;//b的值为1
s.o.p(b);//输出b的结果是1

输出结果为1
作者: 2528    时间: 2016-5-9 07:50
对的。其实还可以把赋值的结果打印出来,这样会更明显。
<b = a++ ; c = ++a ;> 把b ,c 的值打印出来看一下。
作者: 小雨淅沥    时间: 2016-5-9 09:35
支持一下,加油哦




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