Java 为什么这个while循环是这样的? inti=1; int j=1; 而(i

Java 为什么这个while循环是这样的? inti=1; int j=1; 而(i,java,while-loop,Java,While Loop,我有以下几点,我正试图弄清楚它是如何工作的。我是java新手,所以我还不知道如何调试我的代码。这个程序的输出表示i=4,j=7。然而,while循环的条件应该只在i

我有以下几点,我正试图弄清楚它是如何工作的。我是java新手,所以我还不知道如何调试我的代码。这个程序的输出表示i=4,j=7。然而,while循环的条件应该只在i<4时执行。为什么在i=4时执行?我尝试将条件更改为I循环计数器将在循环的每次迭代中递增。当计数器的增量超过3(等于4)时,循环将停止。当计数器为4时,循环将不会运行,但计数器仍然增加到4

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

i=3
时进入循环。在循环内部,将i增加1(
i++
)。在迭代结束时,检查
i是否在
i=3
时进入循环。在循环内部,将i增加1(
i++
)。在迭代结束时,检查
ii=1

1比4小吗?是的,所以循环

在i上加一,现在i=2

2比4小吗?是的,所以循环

在i上加一,现在i=3

3比4小吗?是的,所以循环

将一个添加到i so nowi=4

4比4小吗?不,离开循环

打印i的值,该值为4。

i=1

1比4小吗?是的,所以循环

在i上加一,现在i=2

2比4小吗?是的,所以循环

在i上加一,现在i=3

3比4小吗?是的,所以循环

将一个添加到i so nowi=4

4比4小吗?不,离开循环


打印i的值,该值为4。

上次条件为真时(
i==4
),会更改
j
i
的值
i
必须
==4
才能终止循环。它在
i==4
时终止,因此当您完成时,这就是
i
的值。这与Java无关,我所知道的每种语言都是相同的,除此之外,请考虑如果将条件更改为
i<1
j
i
的值在上一次条件为真(并且循环运行)时更改。当
i==4
时,它不会执行
i
必须
==4
才能终止循环。它在
i==4
时终止,因此当您完成时,这就是
i
的值。这与Java无关,我所知道的每种语言都是一样的,除了一个例外,请考虑一下如果您将条件更改为
i<1
会发生什么。谢谢您解释这些步骤。我想当I=4时它不会执行,但我仍然会递增。感谢您解释这些步骤。我认为当I=4时它不会执行,但我仍然会递增。
    int i = 1;
    int j = 1;

    while (i < 4) {

        j += i;

        i++;

    }

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