++i和i++的区别
++i和i++的区别
++i
- ++i:操作符在变量之前,先进行自身运算(i+1的操作),再进行其他运算,也就是加法的运算。
i++
- i++:操作符在变量之后,先做其他运算(这里不能执行i+1的操作)只能先做加法运算,再进行自身运算(i+1的操作)。
Code
如上图所述:
- a=i++的值为1,(i++是先进行加法运算,再进行自身i+1,返回值是i)因为要先进行加法运算,已知i本身为1,所以返回值a=i=1,完成a=i=1以后,i自身再进行+1,所以这里i=2,但是a=i=1已经成功赋值了,所以这里的a不等于2,而等于1
- b=++i的值为3,(++i是自身i先+1,再进行加法运算,返回值是i+1)由前面可以知道此时的i已经等于2了,因为i自身先+1,所以此时的i=3,再进行加法运算,所以b=3
- 所以a+b=4