java如何终止多层循环

Python015

java如何终止多层循环,第1张

众所周知,在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!

在 java 中,在循环语句的执行语句中赋予变量值的操作不会导致变量被释放。

Java 中的变量在被声明后,会在内存中分配一块存储空间,并保存该变量的值。在执行循环语句时,变量值会被重复赋值,但是它的存储空间并不会被释放。

当循环结束后,变量的值可能会发生变化,但是变量本身的存储空间并不会被释放。它只有在程序执行结束后,Java 虚拟机才会清理内存并释放相关资源。

因此,在 java 中,在循环语句的执行语句中赋予变量值的操作不会导致变量被释放。

再试一次重新路由

java 停止一个死循环,可以使用break关键字,跳出循环,如下代码:

package com.qiu.lin.he

public class Ceshi {

public static void main(String[] args) {

for (int i = 2 i > 0 i++) {

if (i == 80) {

System.out.println("死循环退出了")

break

}

}

}

}

运行结果如下: