【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