Java for循环,初始化变量满足终止要求,但循环不会终止

时间:2013-04-29 22:26:01

标签: java loops for-loop

我已经研究了一段时间,但似乎无法弄清楚为什么这个循环不会终止。

public class Test{
    public static void main (String [] args){
        for (int i = 11; i > 10; i++){
            System.out.println(i);}
    }
}

变量初始化为满足循环终止要求的值,所以不应该没有任何输出?
对不起,如果这是一个菜鸟问题,但我似乎找不到搜索的答案(或者我可能只是在搜索时没有恰当地写出问题)
循环只是一直执行,直到按ctrl + c。
提前致谢。

3 个答案:

答案 0 :(得分:1)

for loop(此处为i > 10)中的第二个代码片段是boolean表达式,如果true,则允许循环再次运行。它显然是true(直到整数溢出)。

答案 1 :(得分:1)

您的循环以i = 11开头,在i > 10 == true时继续,并在每次迭代时执行i++

你看到它现在不会终止吗?

答案 2 :(得分:1)

循环永远不会结束,结束条件表明循环将在i <= 10时停止,并且在开头给出i = 11时,条件将评估为11 > 10 == true,进入无限循环。

嗯,严格来说,在索引溢出后结束,但要达到这一点需要很长时间。

相关问题