Java運算符(i++與++i)
運算符 用於指明對於操作數的運算方式
按照運算符的功能來分類
算術運算 :+ - * / %(取余 取模); + +(自增) - -(自減)
賦值運算 : = 賦值符號,將 = 右邊的內容(值 引用)存入左邊的變量空間
+=(x+=2;相當於x=x+2;) -= *= /= %=
關系運算(比較) : > >= < <= != == (對象 instanceof 類) 比較運算符的最終結果是boolean類型,也就是true或false
邏輯運算 : & (邏輯與)(前後兩個條件同時滿足,結果才為true)、 | (邏輯或)(前後兩個條件有一個滿足最終結果就為true)、^ (邏輯異或)(前後兩個結果不一致,結果為true)、
! (邏輯非)(將原來結果取反)、&& (短路與)(如果前一個條件為false,則直接斷定結果為false,不再對第二個條件進行判斷)、|| (短路或)(當第一個條件為true,則不再對第二個條件進行判斷)
位(bit)運算 : & (按位與)、 | (按位或)、^ (按位異或)、 ~ (按位取反)、 << (按位左位移)、 >> (按位右位移)、 >>> (按位右位移 無符號 不保留代表正負號的bit) 十進制後按字面意思進行計算;
i + + 與 + + i
i + +相當於i = i + 1;//在對i進行運算時,會先將 i 空間內的值取出至臨時備份空間,然後從常量區取出數值1,而後進行計算,最後將計算結果存回 i 空間;
當+ + 在變量前面時,會先進行自增,後進行備份;而當 + +在變量後面時,會先備份後自增。而賦值操作是將備份空間中的值賦給別人!
int x = 1; int y = x + +;//此時x值為2,y值為1,當 = 與 + + 分別在x兩側時,先賦值後自增 int y = + + x;//此時x值為3,y值為3,當 = 與 + +相鄰時,先自增後賦值 int x = x + +;//此時x值為3
Java運算符(i++與++i)