目錄
1 基本概述
2 自增與自減的用法
2.1單獨使用
2.2 參與運算
3 思考與練習
3.1 基礎題
3.2 中等題
3.3 進階題
4 總結
源計劃:我從來不認為自己的成功過程有多心酸,只是心中不懼失敗,能夠承受別人不能接受的失望而已!
1 基本概述
? ? ?JAVA的自增(++)與自減(--)是用于對變量進行加1或減1操作的運算符。它們既可以用于前綴用法(++i),也可以用于后綴用法(i++),但是它們的用法有一些區別的。
2 自增與自減的用法
2.1單獨使用
int i = 0;
i++;? ? ?//無論是i++或者是++i,只要是單獨寫一行,它們的結果都是加1,自減同理。
2.2 參與運算
自增與自減參與運算時,有先加后用與先用后加兩種方式。
1)先加后用的情況
int i = 1;
int add?= ++i + 3;? ?// 表達式的運算中,++在前,表示自身先加1,然后在參與計算,add的結果為5,i為2
?2)先用后加的情況
int i = 1;
int m = i-- +i;? //表達式運算中,--在后,表示在整個表達式運算過程中,變量1是不變的,結束運算后它才會自行減1,這里的運算結果為,m為2,i=0
3)代碼示例
public class test001 {public static void main(String[] args) {int i = 1;int add = ++i + 3;System.out.println(add);System.out.println(i);int m = i-- + i;System.out.println(m);System.out.println(i);}
}
運行結果
3 思考與練習
3.1 基礎題
1.預測以下代碼的結果
int a = 100;
int b = a++;
System.out.println(a);? ?//結果為?
System.out.println(b);? ?//結果為?
2.預測以下代碼的結果
int x = 100;
int y =? --x;
System.out.println(x);? ?//結果為?
System.out.println(y);? ?//結果為?
3.預測以下代碼的結果
int m = 5;
m++;
++m;
System.out.printfln(m);? ?//?
3.2 中等題
4.預測以下代碼的結果
int i = 100;
int j = i++ + ++i;
System.out.println(i); // ?
System.out.println(j); // ?
5.預測以下代碼的結果
int p = 100;
int q = p-- - --p;
System.out.println(p); // ?
System.out.println(q); // ?
6.預測以下代碼的結果
int a = 10;
int b = 20;
int c = a++ * ++b;
System.out.println(a); // ?
System.out.println(b); // ?
System.out.println(c); // ?
3.3 進階題
7.預測以下代碼的結果
int num = 6;
System.out.println(num++); // ?
System.out.println(++num); // ?
System.out.println(num--); // ?
System.out.println(--num); // ?
System.out.println(num); // ?
8.預測以下代碼的結果
int x = 100;
x = x++ + ++x;
System.out.println(x); // ?
9.預測以下代碼的結果
int a = 10;
int b = 20;
int c = a-- + --b + a++ + b--;
System.out.println(a); // ?
System.out.println(b); // ?
System.out.println(c); // ?
4 總結
? ? ?JAVA的自增與自減運算對于代碼編寫是十分重要的,應用較多,因此掌握它是必須的。它們單獨使用時,要么放前面,要么放后面,只要在一行內,放前或放后是沒有區別的。但是涉及到計算時,自增與自減運算符放變量前面表示先自增或自減操作,然后再進行后面的表達式運算;若運算符放變量后面表示先使用目前變量的數值來參與表達式運算,最后再進行變量的自增或自減操作。單獨使用大家都很容易理解,但是參與計算時很多人會懵,這時就需要反復看筆記,哪一步沒有懂的就去弄懂它,理解之后會發現其實也就那樣。好了,我們在下一個章節再見,加油!