永发信息网

java中a=2,b=6 (a++)+(++b) +a*b 为什么是30呢?

答案:3  悬赏:10  手机版
解决时间 2021-11-12 01:28
  • 提问者网友:浪荡绅士
  • 2021-11-11 21:59
java中a=2,b=6 (a++)+(++b) +a*b 为什么是30呢?
最佳答案
  • 五星知识达人网友:痴妹与他
  • 2021-11-11 23:16
a=2
b=6
(a++)+(++b) +a*b
(a)+(b+1)+(a+1)*(b+1)
2+ 7+ 3 * 7 = 30

a++是先把a原来的值参与运算、再+1,++b是先+1后再参与运算
全部回答
  • 1楼网友:想偏头吻你
  • 2021-11-11 23:40
涉及到运算符的优先级,多看看那部分的知识
我个人认为,a*b的时候a=3,b=7;++b是7,但a++是2,应该是++在后面时,优先级低
唉,我自己学的也不好,等真正的高手来解答吧
  • 2楼网友:罪歌
  • 2021-11-11 23:34
2+7 = 9 加上 3*7=21 结果不是30吗?
a++一开始是(2)不会加的,在算完后在加(3),也就是说第一次用a来运算的是不++,第一次运算完后,就+1了。
++b,是马上先b+1,然后在做运算。
所以一开始a=2 b=7 ,后面a*b时,a=3 b=7。
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯