课程
/后端开发
/Java
/Java入门第一季(IDEA工具)升级版
newAge=++age1 输出为25,但newAge=age1++ 输出却为24???
2016-09-13
源自:Java入门第一季(IDEA工具)升级版 3-2
正在回答
这个其实很简单,别搞混了理清楚就OK了,举例:
首先 a++和++a 的定义:看个例子
A: a=5; b=++a; // 相当于a=a+1;b=a; 结果是a=6,b=6
B: a=5; b=a++; // 相当于b=a;a=a+1; 结果是a=6,b=5
a++ 先赋值,再自增+1
++a先自增+1,再赋值
这样就能理解了吧
++在前是先加1再赋值, 而++再后的时候是先把其值赋值给等号右边再 自身+1.
上面那个++看成吃饭
这个简单,打个比方,b=++a,跟b=a++,可以这么来看,等式左边b是 体重称量,右边a是你的体重
b=++a,就是说,你先吃饭,然后再去称体重,假如a刚刚开始是1的话,那么,b就是2
b=a++就是说,你先称重,再去吃饭,a刚刚开始是1的话,那b也是1,
但不管怎么样,运行完这句话之后,你都吃过饭了,所以,a之后就是2了。
我这么解释,你应该懂了吧,打字很累的,觉得可以就采纳了吧
这个是先加后加的问 如果++在后面,则先给左边的赋值,再自行+1,如果++在前面,则先自增1,再用自增后的给左边赋值
举报
0基础萌新入门第一课,从Java环境搭建、工具使用、基础语法开始
2 回答int newAge=--age1;
2 回答为什么int newAge=--age1而不是int newAge=ayge1--?
2 回答int newAge = --age1;--为什么不能放在age1后面》
6 回答int sum=age1+age2+age3+age4; double avg=(age1+age2+age3+age4)/4; int minus=age1-age2; int newAge=--age1
2 回答int newAge=age1--; 好像不管用呀?