- count=count++等于0的原因
public static void main(String[] args) {
int count = 0;
for (int i = 0; i < 10; i++) {
count = count++;
}
System.out.println(count); //运行结果:0
}
JVM的单次循环时执行流程:
- 第1步:执行count=count(count=0),JVM把count的值(其值为0)拷贝到临时变量区
- 第2步:执行count+1,但执行结果未赋值给count
- 第3步:当count+1执行完毕后,存存放在临时变量区的count=0的拷贝值(一直从未改变过)又赋给了count