break是跳出一层循环,continue是结束一趟循环 ,return才是结束所有层循环!
如果有多层for循环,break会跳出当前这一层,去执行最外层循环(而不是退出所有层循环);而continue则结束当前次循环(继续)而去执行下次循环,但本层循环没有结束.(注意一层循环和一次循环的区别:一层循环包含若干(i)次循环)
例:
public class testBreak {
public static void main(String[] args) {
Out:
for(int i=0;i<5;i++){
System.out.println("开始循环"+i);
In:
for(int j=3;j>0;j--){
//break Out;
System.out.println("最内层循环退出了"+j+"次!");
break In;
}
System.out.println("最外层循环"+i+"次");
}
}
}
看运行结果你就明白了:
开始循环0
最内层循环退出了3次!
最外层循环0次
开始循环1
最内层循环退出了3次!
最外层循环1次
开始循环2
最内层循环退出了3次!
最外层循环2次
开始循环3
最内层循环退出了3次!
最外层循环3次
开始循环4
最内层循环退出了3次!
最外层循环4次
把上述代码中的break In改为return; 再试试,
结果:
开始循环0
最内层循环退出了3次!
return退出了所有的循环!
转载自:https://blog.csdn.net/superit401/article/details/52193182 感谢博主