java的continue能用在while里吗

public class Whiler {
public static void main(String[] args) {
int a=0;
while(a<5){
if(a==2){
continue;
}else{
System.out.println("a的值是:"+a);
}
a++;
}
System.out.println("程序结束!");
}
}
问题在哪啊

程序输出结果为:
a的值是:0

a的值是:1

然后是死循环!!!

当a==2时,执行

if(a==2){
continue;
}
不执行下面的语句,而执行下一次循环。但由于没有执行a++;(continue已经跳过下面的语句,所以a++;没有执行),所以下一次循环的时候a还是等于2,然后再一次执行
if(a==2){
continue;
}
陷入死(无限)循环。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2020-02-01
和我一样,for循环就没问题。
当while 循环语句执行到continue时,下面的a++就不会执行了,a会保存当前数值,直接返回开头继续执行形成死循环。
解决办法:在if语句中,continue语句的上面补上a++
第2个回答  2013-03-13
把 a++ 放到while块的开始
第3个回答  2012-07-13
可以使用的。

相关了解……

你可能感兴趣的内容

本站内容来自于网友发表,不代表本站立场,仅表示其个人看法,不对其真实性、正确性、有效性作任何的担保
相关事宜请发邮件给我们
© 非常风气网