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!!!
