java中如何跳出当前的多重嵌套循环

1、break与continue的区别

以for的嵌套循环为例:

break:

public static void main(String[] args) {
        for(int i=1;i<=2;i++)
            for(int j=1;j<=1;j++)
                for(int k=1;k<=5;k++){
                    if(k==3) break;
                    System.out.println(i+""+j+""+k);
                }
    }
111
112
211
212

continue:

    public static void main(String[] args) {
        for(int i=1;i<=2;i++)
            for(int j=1;j<=1;j++)
                for(int k=1;k<=5;k++){
                    if(k==3) continue;
                    System.out.println(i+""+j+""+k);
                }
    }
111
112
114
115
211
212
214
215

continue只是终止本次循环,接着还执行后面的循环,break则完全终止循环

2、java跳出多重嵌套循环的方式

(1)添加标记:

    public static void main(String[] args) {
        for(int i=1;i<=2;i++)
            h: for(int j=1;j<=4;j++)
                for(int k=1;k<=2;k++){
                    if(j==3) break h;
                    System.out.println(i+""+j+""+k);
                }
    }

(2)变量控制:

    public static void main(String[] args) {
        Boolean flag=true;
        for(int i=1;i<=2;i++)
             for(int j=1;j<=4&&flag==true;j++)
                for(int k=1;k<=2;k++){
                    if(j==3) flag=false;
                    System.out.println(i+""+j+""+k);
                }
    }

(3)try/catch方式:

    public static void main(String[] args) {
        try{
            for(int i=1;i<=2;i++)
                for(int j=1;j<=4;j++)
                    for(int k=1;k<=2;k++){
                        if(j==3) throw new Exception();;
                        System.out.println(i+""+j+""+k);
                    }
        }catch (Exception e){

        }
    }
原文地址:https://www.cnblogs.com/zhai1997/p/12708917.html