从零学Java(26)之 continue语句详解

Posted 编程界明世隐

tags:

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

作者简介

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

导航

✪ 从零学Java系列目录索引
◄上一篇  【25】break语句详解
►下一篇待更新     

热门专栏推荐

【1】Java小游戏(俄罗斯方块、飞机大战、植物大战僵尸等)
【2】JavaWeb项目实战(图书管理、在线考试、宿舍管理等)
【3】JavaScript精彩实例(飞机大战、贪吃蛇、验证码等)
【4】Java小白入门200例
【5】从零学Java、趣学Java
【6】Idea从零到精通

引言

♀ 小AD:明哥明哥我来了
♂ 明世隐:嗯,来学一节知识。
♀ 小AD:这时候不是要说点啥吗?
♂ 明世隐:没什么说的呀,直接上Java,你之前不是说上瘾了吗。
♀ 小AD:有点
♂ 明世隐:那就整。

描述

有时候我们不想重复执行某些逻辑,但是又不想直接退出循环,于是java就提供了continue语句,用来跳过当前循环。
continue 语句是跳过循环体中剩余的语句而强制执行下一次循环,其作用为结束本次循环,即跳过循环体中下面尚未执行的语句,接着进行下一次是否执行循环的判定。

实例1

正常的没有continue语句的for循环

public class Test2 {

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

运行结果:

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

实例2

如果我不想打印2,就可以加入continue语句,如下:

public class Test2 {

	public static void main(String[] args) {
		//循环打印
	    for (int i = 0; i < 5; i++) {
	    	if(i==2){//当i=2时,跳过此次循环,进行下次循环判定
	    		continue;
	    	}
	    	System.out.println("打印:"+i);
	    }
	}
}

运行结果:

打印:0
打印:1
打印:3
打印:4

♀ 小AD:怎么少打印了2呢?
♂ 明世隐:因为 i==2 的时候,执行了continue,continue语句执行的时候,当次循环后面的语句就不会被执行了,直接进入下一次循环的判断。
♀ 小AD:那不是跟排到人以后,有人没确认,这把比赛就不开始,重新排队。
♂ 明世隐:差不多可以这么理解。
♀ 小AD:与break有很大区别的,break是直接中断循环,是整个循环都不执行了,对吧?
♂ 明世隐:没错哦,continue只是跳过当前循环未执行的代码,进入下次循环的判断,如果条件满足就继续循环下一次。
♀ 小AD:嗯呢,我明白了。
♂ 明世隐:我们再看一下嵌套循环中的continue。

实例3

在嵌套循环中使用 continue

public class Test3 {

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

运行结果:

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

♀ 小AD:好像也只是跳过了内循环
♂ 明世隐:是的,continue跳过了内循环的第4次循环,但是不影响外循环。
♀ 小AD:这点倒是和之前讲的break一样。
♂ 明世隐:嗯,要做到跳出外循环,也可以用带标签的continue来实现呢。

实例4

带标签的 continue 语句

public class Test4 {

	public static void main(String[] args) {
		 // 外循环
	    out:for (int i = 0; i < 5; i++) {
	        System.out.print("第" + (i + 1) + "次循环:");
	        // 内循环,设计为循环6次
	        for (int j = 0; j < 6; j++) {
	            // 判断j是否等于3,如果是,则终止循环
	            if (j == 3) {
	            	 System.out.println();
	                continue out;
	            }
	            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次

♂ 明世隐:可以看到这个continue会直接把内循环剩余的语句全部跳过,当j ==3的时候,continue out 跳过内层循环,直接到外层循环上去了。
♀ 小AD:也就是内循环第4次、第5次、第6次会被忽略咯。
♂ 明世隐:对
♀ 小AD:那我能问问,在while循环中用continue行不?
♂ 明世隐:来试试就知道了。

实例5

public class Test {

	public static void main(String[] args) {
		int num=0;
		while (num<10) {
			//打印
			System.out.println("打印数字:"+num);
			//递增
			num++;
			if(num==5){
				continue;
			}
		}
	}
}

运行结果:

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

♀ 小AD:好像是没有效果耶。
♂ 明世隐:本意是想让i==5的时候,跳过不打印,但是测试结果表明:while循环中 continue 是不生效的。
♀ 小AD:嗯我知道了。
♂ 明世隐:所以明哥外送你一句:“实践出真知”,编程中遇到问题我们可以去写demo测试一下,结果出来一目了然,心里的疑问自然就解决了!
♀ 小AD:明哥威武!

小结

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

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

导航

✪ 从零学Java系列目录索引
◄上一篇  【25】break语句详解
►下一篇待更新     

热门专栏推荐

【1】Java小游戏(俄罗斯方块、飞机大战、植物大战僵尸等)
【2】JavaWeb项目实战(图书管理、在线考试、宿舍管理等)
【3】JavaScript精彩实例(飞机大战、贪吃蛇、验证码等)
【4】Java小白入门200例
【5】从零学Java、趣学Java
【6】Idea从零到精通

以上是关于从零学Java(26)之 continue语句详解的主要内容,如果未能解决你的问题,请参考以下文章

从零学Java(24)之 foreach 语句

从零学Java(23)之 for 语句

从零学Java(22)之do while 语句

从零学Java(10)之方法详解,喷打野你真的没我6!

从零学Java(19)之 if else分支结构详解,小AD要搞对面心态!

从零学Java(20)之switch case语句,小AD变身中路城管大队!