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

硅谷探秘者 852 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基础 600 答案:javagoto关键字,但是gotojava语言保留字,目前还没有在java使。其goto这个词是C语言goto语句通常与条件语句配合使,可条件转移,构成
数据库 292 是这种写却隐藏着较深使陷阱。在排序字段有数据情况下,会很容易排序结果与预期不一致问题。一、案例mysql版本:mysqlselectversion
java基础 2846 OOM异常,后面笔者也演示了这种情况。四、本地方栈  本地方栈(NativeMethodStacks)与虚拟机栈所发挥是非常相似,其区只是虚拟机栈为虚拟机执行Java
数据结构与算法 749 胜利者,求胜利者编号,以及局者顺序。解决方案使双向链表测试数据m=9,n=5输:517436928代码(c++描述)Node.h#pragmaonceclassNode{public: i
java基础 1439 asm生成for语句方1.jar包2.原java文件packageclub.jiajia.test3;publicclassExamp4{ publicintmethod(inta
数据结构与算法 8593 问题描述:思路:遍历1-n个数,判断是否满足条件。代码:packageclub.test;publicclassTestMain11{ publicstaticvoidmain(String[]args){ intnum=0; for(inti=1;i=10000;i++){ if(hasGivenNum(i)){ num+=i; } } System.out.println
算法基础 822 什么是jxlsjxls是一个简单、轻量级excel导库,使标记在excel模板文件来定义输格式和布局。其java成熟excel导工具有pol、jxl,但他们都是使java
official 385 进程互斥软件单标志,双标志先检查、双标志后检查、Peterson算学习提示:理解各个算思想、原理结合上小节学习互斥四个逻辑部分”,点理解各算在进入区、退区都做了什么
归档
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月  1
标签
算法基础 linux 前端 c++ 数据结构 框架 数据库 计算机基础 储备知识 java基础 ASM 其他 深入理解java虚拟机 nginx git 消息中间件 搜索 maven redis docker dubbo vue 导入导出 软件使用 idea插件 协议 无聊的知识 jenkins springboot mqtt协议 keepalived minio
目录
祝愿神州十三飞行乘组平安归来