Continue ,Break,Return这三个关键字的区别

前言

一般刚开始遇到这三个关键字,都会有点乱,return还好,特别是break和continue,特别容易搞混,所以这里记录一下

正文

1、return :直接跳出当前的方法,返回到该调用的方法的语句处,继续执行

 2.   break:在循环体内结束整个循环过程

 3.  continue :结束本次的循环,直接进行下一次的循环

 

测试

这样说还好像还是有点不太直观,直接放代码测试一下: 
 我分别为 return , break,continue 写了三个方法, 
  相同点:方法里面都是一个for循环,每次循环都会做打印,结束循环后在方法体中也会打印,方法执行结束返回主 
                 函数后也有打印。 
  不同点:其中在for循环中做了一个条件判断,如果i = 3时,三个方法分别执行 return ,break,continue

这样我们通过打印信息就可以看到三个关键字对于for循环执行过程的控制和当前所在方法执行过程的控制啦




三个测试函数:

public class Test {
 
	public static void main(String[] args) {
 
		 testBreak();
		 testContinue();
    	 testReturn();
 
		System.out.println("--主函数------------");
 
	}
 
	/**
	 * break测试方法
	 */
	private static void testBreak() {
		for (int i = 0; i < 5; i++) {
 
			if (i == 3) {
				break;
			}
			System.out.println("--break------------" + i);
		}
 
		System.out.println("--break-------for循环外-----");
 
	}
 
	/**
	 * continue测试方法
	 */
	private static void testContinue() {
		for (int i = 0; i < 5; i++) {
 
			if (i == 3) {
				continue;
			}
			System.out.println("--continue------------" + i);
		}
 
		System.out.println("--continue-------for循环外-----");
 
	}
 
	/**
	 * Return测试方法
	 */
	private static void testReturn() {
		for (int i = 0; i < 5; i++) {
 
			if (i == 3) {
				return;
			}
			System.out.println("--return------------" + i);
		}
 
		System.out.println("--return-------for循环外-----");
 
	}
 
}

 

break的测试打印结果 
 

continue的测试打印结果


return的测试打印结果


 

结论:

    从打印可以看出:
    break:     当i = 3时,执行break后,直接到for循环外,打印--break-------for循环外-----,所以break的作用是结束
                     循环
    continue: 当i = 3时,执行continue后,没有打印接下的--continue------------3,但是下一次循环还是打印了,所以
                      continue只是结束了本次循环,
    return:     当i = 3时,执行return后,不仅结束了循环,而且结束了方法,直接回到主函数了,所以return的作用
                      是结束了所在方法的调用
 

总结:

  return     : 作用于方法,结束当前方法,主要用来返回方法返回值,当方法有返回值的时候,返回对应类型的返回
                     值,没有返回值时,可以返回空,或者不返回
  continue : 作用于语法结构,结束当前方法,结束当前结构,主要用于循环的加速
  break      : 作用于语法结构,作用于结构结束当前结构,主要多用于循环和switch结构中

这里说一下,我上面说的结构,是指循环体结构结构,switch结构等,不知道怎么形容了这种东西了,哈哈,感觉语法结构咋一听也不知道是什么,解释一下哈

理解好这个三个关键字,使用这三个关键字可以提高代码的执行效率。
 

注意:

当前两个字,是指当前所在的结构,例如下面当break出现在循环体中的switch语句体内时,其作用只是跳出该switch语句体

代码:

breakbreak
/**
	 * break测试方法
	 */
	private static void testBreak1() {
		for (int i = 0; i < 5; i++) {
 
			switch (i) {
			case 3:
				break;
			default:
				System.out.println("--switch------------" + i);
			}
			System.out.println("--for---------------" + i);
		}
 
		System.out.println("----------for循环外-----");
 
	}

打印结果: 

 
 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值