經常讓小白犯糊塗的i++和++i的區別


i++ 和 ++i的區別

1.  i++返回原來的值,++i返回+1后的值。

例如在一個Java程序中:

a = i++;可以分解成

a = i;
i = i+1;

a = ++i;可以分解成

i = i+1;
a = i;

分解之后,我們就能很明確的算出結果。i++和++i的主要區別在於+1和返回值的順序。從效率上來講++i要比i++更有效率,因為i++多申明了一個過渡變量,如下:

i++的實現

int temp ;
temp = i ;
i = i + 1;
return temp ;

++id實現

i = i + 1;
return i ;

總結:++i是在i存儲的值上加1,並向使用它的表達式返回新的加1后的值,既先加再返回

           i++是在i存儲的值上加1,但是返回的是未加1的值,既先返回后再加。

一天一個小bug,fighting!!!


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM