public class JavaTest
{
public static void main(String[] args)
{
int i = 0;
for(int j = 0; j < 10; j++)
i = i++;
System.out.println("i = " + i);
}
}
上面代码的输出结果:
i = 0
相信有人会有疑问,出现这种结果的原因是:在Java中,Java的编译器在遇到i++和i--的时候会重新为变量分配一块内存空间,用来存放原始值,在赋值运算完成后再将此内存释放。
而在C语言中 输出结果i=10 ,i = i++仅仅是完成i++的内容。