Java中x=5,m=0求x+=x+++(x+++m)

 我来答
yzq119145443
2015-06-30 · 超过13用户采纳过TA的回答
知道答主
回答量:30
采纳率:0%
帮助的人:28.8万
展开全部
x = x + (x++)+((x++)+m);
x = 5 + 6 + (5+0);
结果为16
追问
等式左边x+怎么变成x的
追答
a= a+1同等于a+=1;
java基础语法。。。。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
beheyegao
2015-06-30
知道答主
回答量:5
采纳率:0%
帮助的人:6480
展开全部
++是自增运算符;+=是加后赋值;还要明白运算符优先等级
计算结果:
x=7+6+(5+0)
x=18
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
FJcjq_2011
2015-06-30
知道答主
回答量:35
采纳率:0%
帮助的人:9万
展开全部
没明白你的意思 。
x=16
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
reborn_hash
2015-06-30 · 超过20用户采纳过TA的回答
知道答主
回答量:67
采纳率:0%
帮助的人:31.4万
展开全部
来看一下,设x=x++,此步的运算逻辑为,先把右边x所引用的值赋给左边的x,然后右边的x再自增,此时右边的x虽然值变为了6,但实际并没有赋给左边的x,所以x的值仍是5。
再看,x+=x++等同于x=x1(1&2只是为了叙述方便的表示,和运算无关)+x2++,同理x=x1+x2,然后x2自增,所以x=10。
最后()中的运算先进行,x自增1==6再加0=6,此时6虽然没有被具体赋给某一变量,但因为之后还参与到其它运算中,所以暂时不会被自动回收。
于是最后结果就是:X=5+5+6==16
追问
我看不懂😭。请问第七行“实际没有赋值给左边的x”是什么意思?
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
收起 更多回答(2)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式