【Java面试题】56 在JAVA中如何跳出当前的多重嵌套循环?


在Java中,要想跳出多重循环,可以在外面的循环语句前定义一个标号,然后在里层循环体的代码中使用带有标号的break 语句,
即可跳出外层循环。例如,

public class xunhuan {
    public static void main(String[] args) {
        ok:
            for(int i=0;i<10;i++)    {
                for(int j=0;j<10;j++)        {
                    System.out.println("i=" + i +",j=" + j);
                    if(j == 5) break ok;
                }
            } 
        for(int i=0;i<4;i++){
                        for(int j=0;j<5;j++){
                            System.out.println("i="+i+"; j="+j);
                            if(j==3){
                                i=4;
                                break;
                            }
                        }
                    }
    }
}

运行结果:

i=0,j=0
i=0,j=1
i=0,j=2
i=0,j=3
i=0,j=4
i=0,j=5
i=0; j=0
i=0; j=1
i=0; j=2
i=0; j=3

另外,我个人通常并不使用标号这种方式,而是让外层的循环条件表达式的结果可以受到里层循环体代码的控制,例如,要在二
维数组中查找到某个数字。

public class xunhuan {
    public static void main(String[] args) {
        int arr[][] = {{1,2,3},{4,5,6,7},{9}};
        boolean found = false;
        for(int i=0;i<arr.length && !found;i++)    {
                for(int j=0;j<arr[i].length;j++){
                    System.out.println("i=" + i + "j=" + j);
                    if(arr[i][j]  == 5) {
                        found = true;
                        break;
                    }
                }
            } 
    }
}

运行结果:

i=0,j=0
i=0,j=1
i=0,j=2
i=1,j=0
i=1,j=1


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM