1、问题背景
以下代码运行的结果为:
A、1000 B、999 C、1001 D、0
/**
* 中间缓存变量机制
*/
package com.you.model;
/**
* @author YouHaiDong
*
*/
public class Middle
{
/**
* @param args
*/
public static void main(String[] args)
{
//声明一个整型a
int a = 0;
for(int b = 0;b<1000;b++)
{
a = a++;
}
//打印a的值
System.out.println("a的值为:" + a);
}
}
2、分析问题
a = a++其实用了中间缓存变量机制,相当于
x = a;
a = a++;
a = x;
3、分析结果
在这个过程中,a的值一直保持不变,始终为:0