Break語句和Continue語句


(注意:只能用在循環中,條件判斷是不可以滴~)

break語句(跳出本層循環)

  • break 語句可以跳出所在層的循環,這些循環可以是for、while、do-while。

continue語句(跳出本輪循環體的剩余語句,進入到當前循環下的下一輪循環體)

  • 結束當前循環體剩下的語句,直接進入下一輪循環體的執行。

 

1、break的例子:求100以內的素數

public class BreakAndContinue {
    public static void main(String[] args) {
        // 求100以內的所有素數
        int count = 0; // 用來記錄素數的個數。
        for (int i = 2; i <= 100; i++) { // 1既不是素數也不會合數,素數從2開始,結束的標志是檢查到100.
            for (int j = 2; j <= i; j++) {
                /* 內循環的作用是:依次遍歷i范圍內的數字,比較它和i的關系。
                 *     例如,如果i是50,那么內循環中的j就依次代表遍歷50以內的這些數字,從2到50。
                 * 判斷一:
                 *     看它是否能把i整除,如果可以並且它倆不相等,那么說明j是i的因數,那就一定不是素數了。
                 *     這時候就直接跳出內循環,讓新的i進入內循環來判斷是否為素數。
                 * 判斷二:
                 *     如果第一個條件判斷不起作用,那么就說明在范圍中找不到i的因數,這樣就不會跳出循環,而會繼續進入下一個判斷。
                 *     進入第二個條件判斷,j能整除i並且二者相等,這就滿足了素數的條件:除了1和它本身沒有其他因數。而此時,j就是i本身。
                 *     找到素數輸出。
                 */
                if (i % j == 0 && i != j) { // 跳出整個內循環
                    break;
                }
                if (i % j == 0 && i == j) {
                    count++; // 每次找到一個,就對計數器累加一次,從而記錄素數的個數。
                    System.out.println("這是第" + count + "個素數,它是" + i + "。");
                }
            }
        }
    }
}

 

 

 

2、continue的例子

public class Continue {
    public static void main(String[] args) {
        int count = 0;
        for(int i = 1; i <= 10; i++) {
            if(i == 5) {
                // 遍歷到5的時候,就會跳過當前循環體,當然也不會去執行剩下的語句了。
                // 於是就到了下一輪循環(此時i的值是6),所以這里的第5次輸出是6而非5,因為5的那一輪循環被跳過了。
                continue;
            }
            count++;
            System.out.println("第" + count + "次輸出,輸出值為" + i);
        }
    }
}


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM