最佳答案
我有一个简单的位代码,是 假设是一个无止境的循环,因为 x
将始终在增长,并将始终大于 j
。
int x = 5;
int y = 9;
for (int j = 0; j < x; j++) {
x = x + y;
}
System.out.println(y);
但是,它打印 y
并且不会无休止地循环。我不知道为什么。不过,当我以下列方式调整代码时:
int x = 5;
int y = 9;
for (int j = 0; j < x; j++) {
x = x + y;
System.out.println(y);
}
System.out.println(y);
它变成了一个无穷无尽的循环,我不知道为什么。Java 是否认识到它是一个无穷无尽的循环,并在第一种情况下跳过它,但是在第二种情况下必须执行一个方法调用,这样它才能像预期的那样运行? 困惑:)