前几天用for循环写了一次和continue有关的代码,简化为
for(int i=0;i<5;i++){
if(i==3){
continue;
}
}
自然而然的,我想尝试下用while可不可以,于是我写了一下
int i=0;
while(i<5){
if(i==3){
continue;
}
i++;
}
作为一个新手乍一看没什么错误,但一运行,出来的却是个错码,当时我百思不得其解,也是我太菜了,想了半个小时后才发现是continue的问题。
continue语句的作用为终止当前的循环,而continue下面的代码就不执行了,直接进入下一次循环。
在那个错误语句中,当i=3,运行到continue时,此次循环便被终止了,无法运行到i++这行代码,便成了一个一直处于(i=3)的死循环
但while还是可以和continue配合的
例如,我们可以吧i++提前,就变为
int i=0;
while(i<5){
i++;
if(i==3){
continue;
}
}
这样就可以很好的解决的。
说实话,还是我太菜了,本来一眼就能看出的问题看了半个小时,所以我决定写下来,详细的写出对他的错误与理解,便于其他初学者观看,也作为对自己的笔记与告诫。