1、continue,break,return
continue:跳出当前层循环的当前语句,执行当前层循环的下一条语句。
continue+标签
break:跳出当前层循环。
break+标签:多层循环时,跳到具体某层循环。
return:结束所有循环,方法内直接返回。
break和continue是老生常谈的东西,break是终止当前层循环,包括之后的本层循环,continue是终止本次循环的语句,继续之后的本层循环。
二、java中的标签
Java的控制循环结构中是没有关键字goto的,这种做法有它的好处,它提高了程序流程控制的可读性,但是也有不好的地方,它降低了程序流程控制的灵活性,所以说,“上帝是公平的”。所以,Java为了弥补这方面的不足,Java提供了break和continue的标签用法。Java中的标签就是一个紧跟着“:”的标识符。与其他语言不通,Java语言的标签必须放在循环前面才有作用。下面就来看一些例子:
2.1continue + 标签
public void continueLabelTest(){outer:for(int i = 0; i<5; i++){for(int j = 0; j<6; j++){if(j == 4){continue outer;}System.out.println(j);}System.out.println("test");}System.out.println("finish");}
我们发现外层循环的test并不会打印,continue+标签,是重新开始外层循环
2.2 break + 标签
public void breakLabelTest() {outer:for (int i = 0; i < 3; i++) {for(int j = 0; j < 5; j++){if(j==4){break outer;}System.out.println(j);}System.out.println("test");}System.out.println("finish");}
我们可以看到会连同外循环一起break掉,所以"test"没有打印。