剖析Java控制语句break、continue、return之间的区别

控制语句的作用

控制语句即用来实现对程序的选择、循环、转向和返回等进行控制。
常用的转向控制有**break、continue、return、**goto(尽量少使用,因为不利于结构化程序设计,滥用会使程序流程无规律、可读性差)等。

各个控制语句的功能

break语句:终止整个循环
continue语句:终止本次循环,继续下次循环
break语句:直接返回;

各个控制语句之间区别的具体体现

接下来通过具体的代码示例来直观的体现各个控制语句的区别

  • 在for循环中(break):
for(int i=0;i<10;i++) {
			if (i==5) {
				break;
			}
			System.out.println(i);
		}
		System.out.println("循环之后的输出");

控制台打印结果:
在这里插入图片描述

  • 在for循环中(continue):
for(int i=0;i<10;i++) {
			if (i==5) {
				continue;
			}
			System.out.println(i);
		}
		System.out.println("循环之后的输出");

控制台打印结果:
在这里插入图片描述

  • 在for循环中(return):
for(int i=0;i<10;i++) {
			if (i==5) {
				return;
			}
			System.out.println(i);
		}
		System.out.println("循环之后的输出");

控制台打印结果:
在这里插入图片描述

  • 结合上面三个示例分析:
    在for循环中,break 语句执行的结果能够打印出0 1 2 3 4 和循环之后的语句,是因为当i=5时,if判断结果为true,执行到了break语句,break语句的作用是终止整个循环,程序继续执行循环后的代码。continue语句执行的结果打印0 1 2 3 4 6 7 8 9和循环之后的语句,是因为因为当i=5时,if判断结果为true,执行到了continue语句,continue语句的作用是结束本次循环,继续下次循环,所以打印的结果中没有出现5。return语句执行的结果为0 1 2 3 4,没有打印出循环之后的语句,是因为return语句的作用是直接返回,结束程序,以至于没有打印出循环之后的打印语句。

控制语句在while循环和for循环中的不同表现

在while循环中,break语句和return语句执行的结果是相同的,只有continue语句的执行结果不同,下面来看看continue语句在while的结果:

	int i = 0;
		while (i<10) {
			if (i==5) {
				continue;
			}
			System.out.println(i);
			i++;
		}
		System.out.println("循环之后的输出");
  • 控制台打印结果:
    在这里插入图片描述
  • 从continue语句在while循环中打印的结果可以看出,控制台只打印出了0 1 2 3 4并不与continue语句在for循环中打印的结果相同,这是为什么呢?continue语句不是结束本次循环,继续下一次循环吗?
  • 接下来对continue语句在while循环中的运行过程进行分析。当i=5时,if判断结果为true,执行到continue语句,结束了本次循环。为什么没有打印出6 7 8 9呢?可以看到代码块中,当i=5时,结束了本次循环,重新回到了while(i<10)判断,然而此时i的值依然是5,因为在执行到continue后,并没有执行到i++。那又为什么没有执行到循环之后的语句呢?当i=5时,执行到if语句中的continue,结束本次循环,i的值没有改变,然后就一直执行while(i<10)–>if(i==5){continue;}–>while(i<10)
    程序一直没有跳出while循环,所以就没有执行到循环之后打代码。同时可以看到控制台一直没有停止运行,所以说明程序没有执行完毕,一直在重复运行while循环。这就是由while循环和for循环的不同特性所导致的不同结果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值