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"没有打印。