java中break的特别用法(实现goto跳出多重循环)

硅谷探秘者 1554 0 0

java中break的特别用法(实现goto)

public class A8 {
	public static void main(String[] args) {
		a:
		for(int i=0;i<10;i++) {
			for(int j=0;j<10;j++) {
				for(int k=0;k<10;k++) {
					if(k==1) {
						break a;
					}
				}
			}
		}
	}
}

         在java中,break作为”goto“使用,说明:break语句除了在switch语句和循环中使用之外,它还能作为goto 语句的一种“文明”形式来使用。Java 中没有 goto 语句,因为goto 语句提供了一种改变程序运行流程的非结构化方式。这通常使程序难以理解和难于维护。它也阻止了某些编译器的优化。但是,有些地方goto 语句对于构造流程控制是有用的而且是合法的。例如,从嵌套很深的循环中退出时, goto 语句就很有帮助。因此,Java 定义了break 语句的一种扩展形式来处理这种情况。通过使用这种形式的break,你可以终止一个或者几个代码块。这些代码块不必是一个循环或一个switch语句的一部分,它们可以是任何的块。

public class A8 {
	public static void main(String[] args) {
		a:
		for(int i=0;i<10;i++) {
			for(int j=0;j<10;j++) {
				for(int k=0;k<10;k++) {
					if(k==1) {
						break a;
					}
				}
			}
		}
		b:
		{
			int a=123;
			if(a==123) {
				break b;
			}
			int b=1;
		}
	}
}

 


评论区
请写下您的评论...
暂无评论...
猜你喜欢
java基础 1215 答案:javagoto关键字,但是gotojava语言保留字,目前还没有在java使。其goto这个词是C语言goto语句通常与条件语句配合使,可条件转移,构成
数据库 939 是这种写却隐藏着较深使陷阱。在排序字段有数据情况下,会很容易排序结果与预期不一致问题。一、案例mysql版本:mysqlselectversion
java基础 3446 OOM异常,后面笔者也演示了这种情况。四、本地方栈  本地方栈(NativeMethodStacks)与虚拟机栈所发挥是非常相似,其区只是虚拟机栈为虚拟机执行Java
数据结构与算法 1583 胜利者,求胜利者编号,以及局者顺序。解决方案使双向链表测试数据m=9,n=5输:517436928代码(c++描述)Node.h#pragmaonceclassNode{public: i
java基础 2289 asm生成for语句方1.jar包2.原java文件packageclub.jiajia.test3;publicclassExamp4{ publicintmethod(inta
数据结构与算法 9069 问题描述:思路:遍历1-n个数,判断是否满足条件。代码:packageclub.test;publicclassTestMain11{ publicstaticvoidmain(String[]args){ intnum=0; for(inti=1;i=10000;i++){ if(hasGivenNum(i)){ num+=i; } } System.out.println
算法基础 1880 什么是jxlsjxls是一个简单、轻量级excel导库,使标记在excel模板文件来定义输格式和布局。其java成熟excel导工具有pol、jxl,但他们都是使java
keepalived,nginx,linux 1247 障切换转移,是通过VRRP来。  在Keepalived服务正常工作时,主Master节点会不断地向备节点发送(方式)心消息,以告诉备Backup节点自己还活着,当主Master节点发
归档
2018-11  12 2018-12  33 2019-01  28 2019-02  28 2019-03  32 2019-04  27 2019-05  33 2019-06  6 2019-07  12 2019-08  12 2019-09  21 2019-10  8 2019-11  15 2019-12  25 2020-01  9 2020-02  5 2020-03  16 2020-04  4 2020-06  1 2020-07  7 2020-08  13 2020-09  9 2020-10  5 2020-12  3 2021-01  1 2021-02  5 2021-03  7 2021-04  4 2021-05  4 2021-06  1 2021-07  7 2021-08  2 2021-09  8 2021-10  9 2021-11  16 2021-12  14 2022-01  7 2022-05  1 2022-08  3 2022-09  2 2022-10  2 2022-12  5 2023-01  3 2023-02  1 2023-03  4 2023-04  2 2023-06  3 2023-07  4 2023-08  1 2023-10  1 2024-02  1 2024-03  1
标签
算法基础 linux 前端 c++ 数据结构 框架 数据库 计算机基础 储备知识 java基础 ASM 其他 深入理解java虚拟机 nginx git 消息中间件 搜索 maven redis docker dubbo vue 导入导出 软件使用 idea插件 协议 无聊的知识 jenkins springboot mqtt协议 keepalived minio mysql ensp 网络基础 xxl-job rabbitmq haproxy srs 音视频 webrtc javascript
目录
没有一个冬天不可逾越,没有一个春天不会来临。最慢的步伐不是跬步,而是徘徊,最快的脚步不是冲刺,而是坚持。