JAVA流程语句之break、continue和标签的使用,以及与return之间的区别(第10节)
1 break,跳出并停止循环
1 break不带标签,默认是跳出当前最近的循环
int a; int b; int c; for(a = 1; a<=3;a++){ for(b = 1; b<=3;b++){ if(b == 2){ break;// 跳出第二层循环 } for(c = 1; c<=3;c++){ System.out.print("a:"+a); System.out.print(","); System.out.print("b:"+b); System.out.print(","); System.out.print("c:"+c); System.out.println(); } } }
输出结果:
a:1,b:1,c:1
a:1,b:1,c:2
a:1,b:1,c:3
a:2,b:1,c:1
a:2,b:1,c:2
a:2,b:1,c:3
a:3,b:1,c:1
a:3,b:1,c:2
a:3,b:1,c:3
2 break配合标签,可以在多层循环嵌套时,实现跳出指定层级的循环
int a; int b; int c; outer1:for(a = 1; a<=3;a++){ outer2:for(b = 1; b<=3;b++){ outer3:for(c = 1; c<=3;c++){ if(c == 2){ break outer2; } System.out.print("a:"+a); System.out.print(","); System.out.print("b:"+b); System.out.print(","); System.out.print("c:"+c); System.out.println(); } } }
执行结果:
a:1,b:1,c:1
a:2,b:1,c:1
a:3,b:1,c:1
2 continue,跳出当次循环,继续下次循环
1 默认不带标签,只跳出最近的一个循环,继续下次循环
int a; for(a = 1; a<=3;a++){ if(a == 3){ continue; } System.out.println("a:"+a); }
输出结果:
a:1
a:2
2 带标签,可以跳出指定层级的循环,继续指定层级的下次循环
int a; int b; int c; outer1:for(a = 1; a<=3;a++){ outer2:for(b = 1; b<=3;b++){ outer3:for(c = 1; c<=3;c++){ if(c == 2){ continue outer2; } System.out.print("a:"+a); System.out.print(","); System.out.print("b:"+b); System.out.print(","); System.out.print("c:"+c); System.out.println(); } } }
输出结果:
a:1,b:1,c:1
a:1,b:2,c:1
a:1,b:3,c:1
a:2,b:1,c:1
a:2,b:2,c:1
a:2,b:3,c:1
a:3,b:1,c:1
a:3,b:2,c:1
a:3,b:3,c:1
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· AI技术革命,工作效率10个最佳AI工具