通常在2层或者更多层循环里面,break后面什么都不跟的话只会跳出当前循环。
所以如果在内层循环里面希望跳出外层循环的话,就在外层循环设置一个标签,然后break这个外层循环的标签,就可以跳出外层循环了。
例如:
这样执行到break的话,它不是从a标签所在的那一层开始执行,而是a标签所在的那一层的上一层开始执行(也就是第一个for循环)。
所以如果在内层循环里面希望跳出外层循环的话,就在外层循环设置一个标签,然后break这个外层循环的标签,就可以跳出外层循环了。
例如:
for(XXX xxx : xxxs){
a:for(XXX xxx : xxxs){
for(XXX xxx : xxxs){
break a;
}
}
}
这样执行到break的话,它不是从a标签所在的那一层开始执行,而是a标签所在的那一层的上一层开始执行(也就是第一个for循环)。