break、continue、return在for循环中的使用

本文详细解析了Java中break、continue及return在不同循环结构中的作用与区别,通过具体实例展示了这些关键字如何帮助开发者精确控制程序流程。


       引言:在使用循环的时候,循环里面带有break、continue、return的时候经常弄混,今天特意整理了下,以待后用...
 
 for (int i = 1; i < 5; i++) {
   System.out.println("i==for=>"+i);
   while(i%2==0){
    System.out.println("i==while==>"+i);
    break;//终止while循环,继续for后面的代码;(终止当前(while)循环,继续循环后面的代码)
   }
  }

  打印结果:
   i==for=>1
    i==for=>2
    i==while==>2
    i==for=>3
    i==for=>4
    i==while==>4
  
  
  
for (int i = 1; i < 5; i++) {
   System.out.println("外层循环i==>"+i);
   for (int j = 1; j < 5; j++) {
    System.out.println("内层循环j==>"+j);
    while(j==2){
     break;//终止while循环,继续for后面的代码;(终止当前(while)循环,继续循环后面的代码) 
    }
   }
  }


  打印结果:
    外层循环i==>1
    内层循环j==>1
    内层循环j==>2
    内层循环j==>3
    内层循环j==>4
    外层循环i==>2
    内层循环j==>1
    内层循环j==>2
    内层循环j==>3
    内层循环j==>4
    外层循环i==>3
    内层循环j==>1
    内层循环j==>2
    内层循环j==>3
    内层循环j==>4
    外层循环i==>4
    内层循环j==>1
    内层循环j==>2
    内层循环j==>3
    内层循环j==>4
  

for (int i = 1; i < 5; i++) {
			System.out.println("外层循环i==>"+i);
			for (int j = 1; j < 5; j++) {
				System.out.println("内层循环j==>"+j);
				if(j==2){
					System.out.println("内层for循环结束...");
					break;//终止当前内层for循环,继续外层for后面的代码;(终止当前循环,继续外层循环后面的代码)	
				}
				System.out.println("j==>"+j);
			}
		}

打印结果:

   外层循环i==>1
   内层循环j==>1
   j==>1
   内层循环j==>2
   内层for循环结束...
   外层循环i==>2
   内层循环j==>1
   j==>1
   内层循环j==>2
   内层for循环结束...
   外层循环i==>3
   内层循环j==>1
   j==>1
   内层循环j==>2
   内层for循环结束...
   外层循环i==>4
   内层循环j==>1
   j==>1
   内层循环j==>2
   内层for循环结束...



  

for (int i = 1; i < 5; i++) {
   while(i%2==0){
    System.out.println("i==return==>"+i);
    return;//终止当前执行的函数,后面的代码不会执行
   }
   System.out.println("i====>"+i);
  }

  打印结果:
    i====>1
    i==return==>2
    
 
 for (int i = 1; i < 5; i++) {
   System.out.println("i===for=>"+i);
   while(i%2==0){//此循环是一个死循环
    System.out.println("i==while==>"+i);
    continue;//终止本次while这次循环,继续while后面的代码;(结束本次循环,继续循环代码)
   }
   System.out.println("i===>"+i);
  }

  打印结果:
    i==for=>1
    i===>1
    i==for=>2
    i==while==>2
    i==while==>2
    i==while==>2
        .
        .
        .
      从上面的结果来看,总的来说就是:break是跳出当前循环(最接近的循环),继续外层循环;continue则是结束本次循环,continue后面的代码不执行,继续后面的循环,也就是说还是在同一个循环内,与break有所不同,break则是跳到了外层循环;return则是终止当前的方法,该方法后面的代码都将不会执行。这些也只是我粗略测试的结果,如果各位有比较好的补充请留言,我会进行相应的修改。

### Javafor循环continuebreakreturn的关键区别 在Java编程语言中,`for`循环是一种常用的控制结构,用于重复执行代码块。在循环内部,可以使用`continue`、`break`和`return`语句来控制程序的执行流程[^1]。以下是这三种语句的关键区别: #### 1. `continue`语句 `continue`语句的作用是跳过当前循环的剩余部分,并直接开始下一次循环迭代。这意味着当`continue`被执行时,循环体中`continue`之后的代码将不会被执行,而是进入下一次循环检查条件是否满足。 ```java for (int i = 1; i <= 5; i++) { if (i == 3) { continue; // 跳过i=3时的剩余代码 } System.out.println("这是" + i); } // 输出结果为:这是1、这是2、这是4、这是5 ``` 上述代码中,当`i`等于3时,`continue`语句导致跳过了`System.out.println("这是" + i)`的执行,直接进入下一次循环[^2]。 #### 2. `break`语句 `break`语句的作用是终止当前所在的循环,使程序控制流跳出循环并继续执行循环后面的代码。如果`break`位于嵌套循环的内层循环中,则仅终止内层循环,而外层循环将继续执行;如果`break`位于外层循环中,则整个循环结构会被终止。 ```java for (int i = 1; i <= 5; i++) { if (i == 3) { break; // 终止整个循环 } System.out.println("这是" + i); } System.out.println("执行下面"); // 输出结果为:这是1、这是2、执行下面 ``` 在此示例中,当`i`等于3时,`break`语句导致循环提前结束,后续代码`System.out.println("执行下面")`得以执行[^3]。 #### 3. `return`语句 `return`语句的作用是结束当前方法的执行,并返回一个值(如果有返回类型)。与`break`和`continue`不同的是,`return`不仅会终止当前所在的循环,还会终止整个方法的执行。因此,无论`return`位于多少层嵌套循环之中,它都会直接退出方法。 ```java public void testReturn() { for (int i = 1; i <= 5; i++) { if (i == 3) { return; // 结束方法 } System.out.println("这是" + i); } System.out.println("执行下面"); // 不会被执行 } // 输出结果为:这是1、这是2 ``` 在这个例子中,当`i`等于3时,`return`语句导致方法`testReturn`立即结束,循环以及后续代码均不再执行[^5]。 ### 总结 - `continue`用于跳过当前循环的剩余部分,直接进入下一次循环。 - `break`用于终止当前所在的循环,使程序控制流跳出循环。 - `return`用于结束当前方法的执行,无论循环处于多少层嵌套中,都会直接退出方法。 ```java public class LoopControl { public static void main(String[] args) { // 示例1: continue for (int i = 1; i <= 5; i++) { if (i == 3) { continue; } System.out.println("这是" + i); } // 示例2: break for (int i = 1; i <= 5; i++) { if (i == 3) { break; } System.out.println("这是" + i); } // 示例3: return testReturn(); } public static void testReturn() { for (int i = 1; i <= 5; i++) { if (i == 3) { return; } System.out.println("这是" + i); } } } ```
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值