为了账号安全,请及时绑定邮箱和手机立即绑定

a++先赋值后运算和++a先运算后赋值的问题

这个先运算或者赋值是指在下一个;后面的句子吗?还是下一个System.out.println输出里面的,怎么区分呢?在同一个输出里有a++  ++a又怎么算呢?经常分不太清楚

正在回答

6 回答

我是这样记的:

前置 赋值前再加

后置 赋值后再加

0 回复 有任何疑惑可以回复我~

b=a++;就是a的值先给b,然后a再+1;

b=++a;就是a先+1,再把值赋给b;


2 回复 有任何疑惑可以回复我~
#1

慕粉2258416217 提问者

int a = 0 ; System.out.println((++a) + (a) - (a) + (++a) - (--a) + (a++)); System.out.println(a); 能帮我写下过程吗?为什么是3和2
2017-03-30 回复 有任何疑惑可以回复我~
#2

慕粉4567898765432 回复 慕粉2258416217 提问者

第一个++a结果是a=1; 所以是1+1=2,然后赋给a=2; 2-2=0;a的值又变为0;也就是说,第二个++a之前a的值没有变化; 同理,后边相当于1-0+2=3;最后一个表达式a++=2;a被重新赋值为2; 所以第一个语句输出3; 第二个输出2;
2017-04-13 回复 有任何疑惑可以回复我~

a++是先用了a的值再加一,++a是先给a加一再用

0 回复 有任何疑惑可以回复我~

a++是后面才加的,而 ++a是前面加的

0 回复 有任何疑惑可以回复我~

a++ 先执行当前语句,再加;++a 先加再执行

0 回复 有任何疑惑可以回复我~

a++是后加 ++a是前加,记得这个就好了

2 回复 有任何疑惑可以回复我~

举报

0/150
提交
取消
Java入门第一季(IDEA工具)升级版
  • 参与学习       1165455    人
  • 解答问题       17585    个

0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始

进入课程

a++先赋值后运算和++a先运算后赋值的问题

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信