迭代停止在零

Anu*_*lot -1 java do-while

public class Main {
    public static void main(String [] args) {
        int i = 0;
        do {
           System.out.println(i); 
           i++;
        } while (i==3);
    }
}

// Outputs 0
Run Code Online (Sandbox Code Playgroud)

为什么迭代停止在零?while(i==3)是一个条件,它测试相等的ito 3.不过,即使增加的值之后ii++为什么输出仅仅是0

Mar*_*oun 7

因为它会打印i,0然后会增加它,并且不会循环,因为3 != 1:

do {
    System.out.println(i); //i is 0, will print 0
    i++;                   //i is now 1
} while (i==3);            //false
Run Code Online (Sandbox Code Playgroud)

阅读while和do-while语句,以更好地理解do-while循环的工作原理.

我小心翼翼地假设你打算写while(i != 3);,如果是这样,你的程序将循环并将打印0 1 2.