以下循环应该无休止地循环,或者我认为。
int y=0;
for(int x=1; x>0; x++)
{
y=y+x;
}
然而,循环确实终止了,我不知道为什么。
答案 0 :(得分:3)
最终x将大于Integer.MAX_VALUE,然后它将溢出为负数 这是一个快速测试,向您展示我的意思
int val = 1000000;
for (int i = 0; i < 100; i++) {
val = val * val;
if (val < 0) {
System.out.println(val);
}
}