Java中的i++探讨

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++的内容。


参考文章:Java学习之神奇的i =  i++

posted @ 2014-04-03 22:35  xiaofly_love  阅读(108)  评论(0)    收藏  举报