xwh*_*hyz 6 java primitive increment
任何人都可以解释为什么这样的电话不会增加我的i价值?
int i = 0;
list.get(7 + (i = i++));
list.get(7 + (i = i++));
Run Code Online (Sandbox Code Playgroud)
它离开i=0而不是至少增加一个,使得在第二次调用中它是1.
i = i++ 就像在做:
int old_i = i;
i = i + 1;
i = old_i;
Run Code Online (Sandbox Code Playgroud)
实际发生的是,值i++是增量发生i 之前的值,然后i得到...的值i.
在一行i++中将使用旧值,i然后它将增加它.