Java小白入门200例47之 break语句详解

Posted 编程界明世隐

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java小白入门200例47之 break语句详解相关的知识,希望对你有一定的参考价值。

作者简介

作者名:编程界明世隐
简介:CSDN博客专家,从事软件开发多年,精通Java、javascript,博主也是从零开始一步步把学习成长、深知学习和积累的重要性,喜欢跟广大ADC一起打野升级,欢迎您关注,期待与您一起学习、成长、起飞!

引言

很多Java初学者问我,新手明明很用心、很努力学习的Java知识,转头又忘记了,很让人犯愁,小白如何能够快速成长、成为大牛呢?
其实要成为大神的技巧只有一个:“多学多练”,于是明哥就整理了比较典型的练习实例,通过练习能够快速提升编码技巧和熟练度,让你在成为大佬的路上一去不复返(切记要亲手练习哦)!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  46.foreach 语句
►下一篇  48.continue语句详解

描述

某些时候需要在某种条件出现时强行终止循环,而不是等到循环条件为 false 时才退出循环。此时,可以使用 break 来完成这个功能。

break 用于完全结束一个循环,跳出循环体。不管是哪种循环,一旦在循环体中遇到 break,系统将完全结束该循环,开始执行循环之后的代码。

switch 中使用break

实例1

package demo.demo42;

import java.util.Calendar;

public class Demo2 {

	public static void main(String[] args) { String weekDate = "";
	    Calendar calendar = Calendar.getInstance();  // 获取当前时间
	    int week = calendar.get(Calendar.DAY_OF_WEEK) - 1;  // 获取星期的第几日
	    switch (week) {
	        case 0:
	            weekDate = "星期日";
	            break;
	        case 1:
	            weekDate = "星期一";
	            break;
	        case 2:
	            weekDate = "星期二";
	            break;
	        case 3:
	            weekDate = "星期三";
	            break;
	        case 4:
	            weekDate = "星期四";
	            break;
	        case 5:
	            weekDate = "星期五";
	            break;
	        case 6:
	            weekDate = "星期六";
	            break;
	    }
	    System.out.println("今天是 " + weekDate);}
}

运行结果:

今天是 星期三

分析:首先今天刚好是星期三(测试代码的日子),因为 case 3 后面加了break,所以走到这里后,switch会被退出,如果我把这个break去掉会怎么样呢?

实例2

package demo.demo42;

import java.util.Calendar;

public class Demo2 {

	public static void main(String[] args) { String weekDate = "";
	    Calendar calendar = Calendar.getInstance();  // 获取当前时间
	    int week = calendar.get(Calendar.DAY_OF_WEEK) - 1;  // 获取星期的第几日
	    switch (week) {
	        case 0:
	            weekDate = "星期日";
	            break;
	        case 1:
	            weekDate = "星期一";
	            break;
	        case 2:
	            weekDate = "星期二";
	            break;
	        case 3:
	            weekDate = "星期三";
	        case 4:
	            weekDate = "星期四";
	            break;
	        case 5:
	            weekDate = "星期五";
	            break;
	        case 6:
	            weekDate = "星期六";
	            break;
	    }
	    System.out.println("今天是 " + weekDate);}
}

运行结果:

今天是 星期四

分析:为啥呢,因为case 3匹配到以后,weekDate被设置为”星期三“,然后因为没有break,所以case会被执行,于是weekDate再次被设置为”星期四“,然后执行break,所以最后会输出这个结果。

while中用break

package demo.demo47;

public class Test {

	public static void main(String[] args) {
		int num=0;
		while (true) {
			//打印
			System.out.println("打印数字:"+num);
			//递增
			num++;
			//加入主动退出条件
			if(num>5){
				break;
			}
		}
	}
}

运行结果:

打印数字:0
打印数字:1
打印数字:2
打印数字:3
打印数字:4
打印数字:5

分析:如果这段代码,没有加入 break 则会死循环哦。

for 循环中使用break

实例1

没有break的for循环。

package demo.demo47;

public class Test2 {

	public static void main(String[] args) {
		//for循环打印
		for (int i = 0; i < 10; i++) {
			System.out.println("打印:"+i);
		}
	}
}

运行结果:

打印:0
打印:1
打印:2
打印:3
打印:4
打印:5
打印:6
打印:7
打印:8
打印:9

如果我想打印完5就不打印了呢,这个时候就要用到break语句了。

实例2

for循环中使用break语句(打印到5就退出)

package demo.demo47;

public class Test2 {

	public static void main(String[] args) {
		//for循环打印
		for (int i = 0; i < 10; i++) {
			System.out.println("打印:"+i);
			if(i==5){
				break;
			}
		}
	}
}

打印:0
打印:1
打印:2
打印:3
打印:4
打印:5

实例3

break如果使用在嵌套for循环中,只会跳出当前循环。

package demo.demo47;

public class Test2 {

	public static void main(String[] args) {
		 // 外循环,循环5次
	    for (int i = 0; i < 5; i++) {
	        System.out.print("第" + (i + 1) + "次循环:");
	        // 内循环,设计为循环10次
	        for (int j = 0; j < 10; j++) {
	            // 判断j是否等于3,如果是,则终止循环
	            if (j == 3) {
	                break;
	            }
	            System.out.print("内循环的第" + (j + 1) + "次循环\\t");
	        }
	        System.out.println();
	    }
	}
}

运行结果:

第1次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环
第2次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环
第3次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环
第4次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环
第5次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环

可以看到,此时内循环中满足条件 j==3后,循环被退出,但是外面的循环还是执行了5次。

实例4

使用 break label语法来实现类似goto 的功能

package demo.demo47;

public class Test3 {

	public static void main(String[] args) {
		 // 外循环
	    out:for (int i = 0; i < 5; i++) {
	        System.out.print("第" + (i + 1) + "次循环:");
	        // 内循环,设计为循环10次
	        for (int j = 0; j < 10; j++) {
	            // 判断j是否等于3,如果是,则终止循环
	            if (j == 3) {
	                break out;
	            }
	            System.out.print("内循环的第" + (j + 1) + "次循环\\t");
	        }
	        System.out.println();
	    }
	}
}

运行结果:

第1次循环:内循环的第1次循环 内循环的第2次循环 内循环的第3次循环

分析:我们用 out 来给外层整个代码块命名,当 j==3 成立的时候,直接break out,就等于直接结束整个循环代码。

小结

这节总结了“break语句详解”,希望能对大家有所帮助,请各位小伙伴帮忙 【点赞】+【收藏】+ 【评论区打卡】, 如果有兴趣跟小明哥一起学习Java的,【关注一波】不迷路哦。

评论区打卡一波让我知道你,明哥会持续关注你的学习进度哦!

导航

✪ Java小白入门200例系列目录索引
◄上一篇  46.foreach 语句
►下一篇  48.continue语句详解

热门专栏推荐

1.Java小游戏系列(俄罗斯方块、飞机大战、植物大战僵尸等)
2.JavaWeb项目实战(图书管理、在线考试、宿舍管理系统等)
3.JavaScript精彩实例(飞机大战、扫雷、贪吃蛇、验证码等)
4.Java小白入门200例
5.从零学Java、趣学Java、以王者荣耀角度学Java

另外

为了帮助更多小白从零进阶Java工程师,从CSDN官方那边搞来了一套 《Java 工程师学习成长知识图谱》,尺寸 870mm x 560mm,展开后有一张办公桌大小,也可以折叠成一本书的尺寸,原件129元现价 29 元先到先得,有兴趣的小伙伴可以了解一下

以上是关于Java小白入门200例47之 break语句详解的主要内容,如果未能解决你的问题,请参考以下文章

Java小白入门200例48之 continue语句详解

Java小白入门200例109之Java Map集合详解

Java小白入门200例111之Collections类操作集合详解

Java小白入门200例69之构造方法详解

Java小白入门200例58之日期Calendar类详解

Java小白入门200例57之日期Date类详解