for 和 while 循环体,我们可以互相转换,但是在使用continue进行跳转时,还是要注意两者跳转的流程是有所不同的。
在while循环体中使用continue时,一定要在continue执行前进行判断变量的改变,因为在while循环体中执行continue会直接跳到while条件判断处进行判断是否为真(进而执行循环体),此前如果判断变量还没改变,自然为真,进而会形成死循环。
而for循环不同,执行continue后,会跳到for循环的判断变量改变的语句(for循环头部第三个语句),然后才到判断条件。所以相当于判断变量改变语句处在循环体的最后,不会形成前面说的死循环。
for (int i = 0; i <= 100; i++) {
if (i % 2 == 0) {
continue;//跳到i++
}
System.out.println(i);
}
int j = 0;
while(j <=100) {
if (j % 2 != 0) {
System.out.println(j);
}
j++;
continue;//跳到j<=100 |
|