continue的功能和break有点类似,区别是continue只是终止本次循环,接着开始下次循环。而break则是完全中止循环。可以理解为continue的作用是略过档次循环中剩下的语句,重新开始新的循环。例如下面的程序示范了continue的用法。public class TestContinue{ public static void main (String[] args) { //一个简单的for 循环 for(int i=0;i<3;i++) { System.out.println("i的值是:"+i); if(i==1) { //略过本次循环的剩下的语句 continue; } System.out.println("continue后的输出语句"); } }} 当i=1时,程序没有输出“continue后的输出语句”字符串,因为程序执行到continue时,忽略了当次循环中continue语句后的代码。从这个意义上来看,如果把一个continue语句放在单次循环的最后一行,这个continue语句是没有任何意义的--因为它忽略了一片空白,没有任何程序语句。 与break类似,continue也可以紧跟一个标签,用于直接结束标签所标示循环的当次循环,重新开始下一次循环。里入下面代码:public class TestContinue2{ public static void main (String[] args) { //外层循环 outer for(int i=0;i<5;i++) { //内层循环 for(int j=0;j<3;j++) { System.out.println("i的值为:"+i+"j的值为:"+j); if(i==1) { //跳出outer标签所指定的循环。 continue outer; } } } }} 运行上面的程序,循环变量的值将无法超过1,因为当j=1的时候,continue outer语句就结束了外层循环的当次循环,直接开始下一次循环,内层循环没有机会执行完成。 与break类似的,continue后的标签也必须是一个有效标签,即这个标签通常应该放在continue所在循环的外层循环之前定义。看完上面的解析,我想楼主应该明白了continue的用法了吧。
如是这样写的continue就没意思了;while(i<100){ System.out.println(i); continue;}像上面把continue写在循环的最后一条语句的是没意义的。因为continue的作用是跳出本次循环,快速进入下一次的条件判读进入下一次循环。