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.不过,即使增加的值之后i为i++为什么输出仅仅是0?
因为它会打印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.