java的++i和i++

java中存在自增或自減運算符,++可以放到變量的前面,也可以放到變量的後面。從理解上講,我們可以認爲++i是先進行的運算,然後進行的賦值;i++是先賦值,然後進行的運算;那麼如下的情況:

int i=5;
i=i++;此時i的結果應該是?---》5
其實在運算的時候,“=”運算符的優先級別是很低的,內存中還是先做等號右邊的操作,只不過i++的時候,會保存一份i的原始值,做賦值操作用。



byte a = 5;

a=5+3;//1、編譯正常,編譯器在編譯的時候,先做等號右邊的運算,結果爲int類型的8,

//8在byte的表示範圍內,編譯器會有一個強轉的過程

byte b = 3;

//byte c = a+b;//2、編譯錯誤,因爲a+b運算爲int類型,同時a和b都爲變量,不確定具體的值是多少

//所以如果數值過大的話,就會導致精度丟失


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章