1. 利用标识变量
定义一个标识变量,在每层循环中判断这个变量
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21public class Test1 { public static boolean flag = true; //标识变量 public static int i = 1; public static int j = 1; public static void main(String[] args) { for (;i<10;i++){ for(;j<10;j++){ if(flag){ break; } } if(flag) { break; } } System.out.println("i="+i+" j="+j); } }
运行结果
复制代码
1
2
3i=1 j=1
虽然这种方法可以实现跳出多重循环,但是很明显代码量大,如果循环层数很多的话,代码会很冗余。
2. 利用try…catch…
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18public class Test2 { public static int i=1; public static int j=1; public static int max = 10; public static void main(String[] args) { try { for (; i < max; i++) { for (; j < max; j++) { throw new Exception("跳出循环"); } } } catch (Exception e) { } System.out.println("i="+i+" j="+j); } }
运行结果
复制代码
1
2
3i=1 j=1
这种方法很好的利用了try…catch…的特性,直接在想要跳出的时候抛出异常,然后进入catch块,就可以跳出多重循环了。
3. 利用标签变量
复制代码
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15public class Test3 { public static int i = 1; public static int j = 1; public static int max = 10; public static void main(String[] args) { label: for (; i < max; i++) { for (; j < max; j++) { break label; } } System.out.println("i=" + i + " j=" + j); } }
运行结果
复制代码
1
2
3i=1 j=1
这种方法是在最外层for循环设置一个标签变量,在需要跳出的循环处使用 break 标签变量 即可跳出多重循环。
- 总结:第一种方法比较繁琐,推荐使用第二种或者第三种。
- 如有不对,烦请指出。
最后
以上就是大气歌曲最近收集整理的关于Java中跳出多重循环的三种方法的全部内容,更多相关Java中跳出多重循环内容请搜索靠谱客的其他文章。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复