Java中的break、continue、return的區別

引用

    Java的關鍵字break,return、continue在使用中能夠很好的提升代碼的執行效率,好比在執行一段循環操做以前,若是先判斷條件不知足,就continue直接下一組循環,或者執行到知足的條件了,無需再循環遍歷,就能夠break跳出循環,沒必要對後續代碼進行無效的執行了。java

 概念

    咱們從引言中也大概知道了三者的區別,先貼一段網上看到的區別描述:函數

    continue:跳出本次循環繼續下一次循環spa

    break:   跳出循環體,繼續執行循環外的函數體code

    return:   跳出整個函數體,函數體後面的部分再也不執行。class

實踐

    看了概念部分,咱們能夠動手來操做一下,擼一段代碼,代碼以下:test

@Test
    public void testBreakContinueReturn(){
        for (int i = 0; i < 5; i++){
            if (i == 2){
                break;
            }
            System.out.println("break[" + i + "]");
        }
        System.out.println("break end!");
        for (int i = 0; i < 5; i++){
            if (i == 2){
                continue;
            }
            System.out.println("continue[" + i + "]");
        }
        System.out.println("continue end!");
        for (int i = 0; i < 5; i++){
            if (i == 2){
                return;
            }
            System.out.println("return[" + i + "]");
        }
        System.out.println("return end!");
    }

    執行結果以下:效率

    

    執行結果很明顯的印證了概念上說的內容。循環

後記

    爲了更能的說明return是結束函數體,demo中經過調用一個方法,修改的代碼以下:遍歷

public void testBreakContinue(){
        for (int i = 0; i < 5; i++){
            if (i == 2){
                break;
            }
            System.out.println("break[" + i + "]");
        }
        System.out.println("break end!");

        for (int i = 0; i < 5; i++){
            if (i == 2){
                continue;
            }
            System.out.println("continue[" + i + "]");
        }
        System.out.println("continue end!");

        returnInMethod();
        System.out.println("return to call method");

        for (int i = 0; i < 5; i++){
            if (i == 2){
                return;
            }
            System.out.println("return[" + i + "]");
        }
        System.out.println("return end!");
    }

    private void returnInMethod(){
        System.out.println("return in method");
        return;
    }
相關文章
相關標籤/搜索