java a=a++;b=a++;为什么值不一样
答案:7 悬赏:0
解决时间 2021-01-07 02:51
- 提问者网友:趣果有间
- 2021-01-06 15:45
java a=a++;b=a++;为什么值不一样
最佳答案
- 二级知识专家网友:夜余生
- 2021-01-06 17:13
a初始值为1,然后a = a++ 这条语句的意思是先使用a的值1,用完后让a值加1赋给a,那么运行完这句话后a的值为2了,在运行b=a++这句话的时候,先使用2,然后再加1,运行完后a的值为3。a++的意思是先使用值再加1,++a的意思是先加1再使用。
全部回答
- 1楼网友:不甚了了
- 2021-01-06 23:29
a=a++; 这句意思是先执行a++,此时a为2,再将‘a++’这个表达式的值(为a原始值1)赋给a,这时a等于1;
b=a++; 同样a++后a的值变为2了,b再赋值a++表达式的值为1;
如果注释都去掉结果输出 2 1
b=a++; 同样a++后a的值变为2了,b再赋值a++表达式的值为1;
如果注释都去掉结果输出 2 1
- 2楼网友:往事埋风中
- 2021-01-06 22:48
a=a++; a运行这行代码后a才+1,所以a=1
- 3楼网友:独行浪子会拥风
- 2021-01-06 21:24
a ++ 指先赋值再自加; ++a指先自加再赋值
- 4楼网友:夜风逐马
- 2021-01-06 20:30
怎么可能输出b不是1,如果b=a++,那么 b肯定等于1的。你仔细看看吧。
- 5楼网友:神也偏爱
- 2021-01-06 19:50
取消7.9行注释,注释掉6.8行,输出一定是1。再仔细检查一下代码
- 6楼网友:走死在岁月里
- 2021-01-06 18:23
a= a++你先要明白a++的含义,他表示先调用自己再进行加1操作,这里也就是说先将a=1的值再赋值自己,然后再执行加1操作,所以b就是加1操作之后的结果,也就是2
我要举报
如以上问答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
大家都在看
推荐资讯
• 手机登qq时,显示手机磁盘不足,清理后重新登 |
• 刺客的套装怎么选啊? |