A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 15917846944 中级黑马   /  2015-7-16 12:53  /  747 人查看  /  4 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int a=1,b;
b=a++;
System.out.println(b);
为什么打印出来是1呢?
而int a=1;
a++;
System.out.println(a);
为什么打印出来是2呢?
求大神!

4 个回复

倒序浏览
本帖最后由 小虎199406 于 2015-7-16 14:19 编辑

b=a++;是在a=1 的情况下 先将a=1 的值进行赋值给b  b=1; ,在 a再自增 a++=2;而第二个a=1 ;a++; a等于1的情况下a进行一次自增  
回复 使用道具 举报
b=a++;将a的值赋给b,自身+1;a的值变为2
回复 使用道具 举报
Matrix_heima 发表于 2015-7-16 14:26
b=a++;将a的值赋给b,自身+1;a的值变为2

谢谢,逐渐可以理解了!赞!
回复 使用道具 举报
a++ 先执行操作再自增
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马