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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 孔子骑黑马 中级黑马   /  2015-9-6 21:00  /  266 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

课上老师讲的,你会吗?
int a=1;
a=a++;
请问:a输出几?
(答案是:1)

5 个回复

倒序浏览
a++,是先使用再自增;++a是先自增再使用自增后的值。
回复 使用道具 举报
你可以理解为左边的a值是2,但是右边是1,把1赋给a,然后a又成1了
回复 使用道具 举报
楼上不错、··
回复 使用道具 举报
这是优先级问题。在java编译器中,++的优先级大于=,所以a=a++,先把(a++)这个结果开辟一个临时空间存储为1,a++自加1后,此时a=2的,然后执行赋值=,所以就覆盖了之前的2,所以a=1了。
回复 使用道具 举报
以后发帖一定要注意一些
回复 使用道具 举报 1 0
您需要登录后才可以回帖 登录 | 加入黑马