java如何终止多层循环

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java如何终止多层循环相关的知识,希望对你有一定的参考价值。

  众所周知,在Java中,如果想跳出for循环,一般情况下有两种方法:break和continue。
break是跳出当前for循环,如下面代码所示:

public class RecTest  
 
    /**
     * @param args
     */ 
    public static void main(String[] args)  
        for(int i=0; i< 10; i++) 
            if(i==5) 
                break; 
             
            System.out.print(i+" "); 
         
     


输出:0 1 2 3 4
也就是说,break会跳出(终止)当前循环。continue是跳出当前循环,开始下一循环,如下所示:

public class RecTest   
    /**
     * @param args
     */ 
    public static void main(String[] args)  
        for (int i = 0; i < 10; i++)  
            if (i == 5)  
                continue; 
             
            System.out.print(i+" "); 
         
     

  输出:0 1 2 3 4 6 7 8 9

   以上两种方法没有办法跳出多层循环,如果需要从多层循环跳出,则需要使用标签,定义一个标签label,
然后在需要跳出的地方,用break
label就行了,代码如下:

public class RecTest   
    /**
     * @param args
     */ 
    public static void main(String[] args)  
 
        loop: for (int i = 0; i < 10; i++)  
            for (int j = 0; j < 10; j++)  
                for (int k = 0; k < 10; k++)  
                    for (int h = 0; h < 10; h++)  
                        if (h == 6)  
                            break loop; 
                         
                        System.out.print(h); 
                     
                 
             
         
        System.out.println("\\nI'm here!"); 
     

输出:
012345
I'm here!

  

参考技术A

可以为循环添加个标签 要退出循环使用    break 标签;

public static void main(String[] args) 

  rmark:

   for (int i = 0; i < 10; i++) 

    for (int j = 0; j < 10; j++) 

     System.out.println(i+"-"+j);

     if(i==5)

      break rmark;

    

   

 System.out.println("循环以终止");

 

参考技术B return 直接退出来 参考技术C break。放那层终止那层

python从最内层跳出多层循环

跳出多层循环:三层循环,最里层直接跳出3层

方法一:
在Python中,函数运行到return这一句就会停止,因此可以利用这一特性,将功能写成函数,终止多重循环

ef work():                                  #定义函数
for i in range(5):
print("i=", i)

for j in range(5):
print("--j=", j)

for k in range(5):

if k<2:
print("------>k=", k)
else:
return i,j,k
print (work())



方法二:
定义变量,更改变量状态,不满足条件,循环跳出
break_flag=False
for i in range(10):
print("爷爷层")
for j in range(10):
print("爸爸层")
for k in range(10):
print("孙子层")
if k==3:
break_flag=True
break #跳出孙子层循环,继续向下运行
if break_flag==True:
break #满足条件,运行break跳出爸爸层循环,向下运行
if break_flag==True:
break #满足条件,运行break跳出爷爷层循环,结束全部循环,向下运行
print("keep going...")

技术分享

 

 

方法三:

while循环语句,定义条件,条件改变,循环结束

break_flag=False
count=0
while break_flag==False:
print("爷爷层...")

while break_flag==False:
print("爸爸层...")

while break_flag==False:
if count<5:
print("孙子层...")
count+=1
else:
break_flag=True
print("keep going...")

技术分享

























































































以上是关于java如何终止多层循环的主要内容,如果未能解决你的问题,请参考以下文章

java中循环的不同终止方式

Java基础笔记13——终止循环

Java for 循环没有在我的代码中终止

终止或中断java 8流循环[重复]

Break和Continue的用法

Java8 Lambda 表达式中的 forEach 如何提前终止?