为什么这个while循环以这种方式行事?

时间:2013-11-01 01:59:25

标签: java while-loop

    int i = 1;
    int j = 1;

    while (i < 4) {

        j += i;

        i++;

    }

    System.out.println("i = " + i);
    System.out.println("j = " + j);

我上面有以下内容,我试图弄清楚它是如何工作的。我是java的新手,所以我不知道如何调试我的代码。该程序的输出表示i = 4且j = 7.然而,while循环的条件应仅在i <1时执行。 4.为什么在i = 4时执行?我尝试将条件更改为i&lt; = 4并输出i = 5.我在这里缺少什么?

3 个答案:

答案 0 :(得分:3)

循环计数器将在循环的每次迭代中递增。当计数器增加到3(当它等于4时)时,循环将停止。当计数器为4时,循环不会运行,但计数器仍然增加到4

答案 1 :(得分:1)

i = 1

是1还不到4?是的,所以循环。

在i中添加一个,所以现在我= 2。

2小于4?是的,所以循环。

在i中添加一个,所以现在我= 3。

3小于4?是的,所以循环。

在i中添加一个,所以现在 i = 4

是4还不到4?不,离开循环。

打印i的值为4。

答案 2 :(得分:0)

您在i=3时进入循环。在循环内部,您将i递增1(i++)。在该迭代结束时,您检查i<4是否为i=4,因为{{1}}。