自加自減問題
int a=5;
int b=++a;
System.out.println("a":+a);
System.out.println("b":+b);
結果a:6,b:6
怎么得來的???
a不是等于5嗎?怎么輸出后成6了?
求解答
int a=5;
int b=++a;
System.out.println("a":+a);
System.out.println("b":+b);
結果a:6,b:6
怎么得來的???
a不是等于5嗎?怎么輸出后成6了?
求解答
2018-05-20
舉報
2018-06-09
++在前先運算再賦值,++在后先賦值在運算。
2018-05-20
(暫且先不討論a++和++a的區別問題)你應該知道a++是什么意思。實際上a++的意思是a=a+1;所以說在第二行之中 int b = ++a;我們為b賦值了(++a)的結果。就是6。同時也讓a的值從5變成了6;
實際上。如果你在第二行寫成 int b = a++;那么輸出的結果,應該是 a:6 b:5。
其實簡單的理解?int b = a++;和?int b = ++a;可以認為第一種是先將a=5這個值賦值給b。然后在做a++的自增運算。而第二種是先做完a的自增運算在將自增完成的結果值6賦值給b。
不知道我說的你能不能理解。