Java continue的特殊用法 繼續當前循環

前言

今天java練習的時候,遇到了一道有趣的題目,加深了我對cotinue的理解,因此我寫個筆記,記錄一下continue的特殊用法java

continue做用說明

這裏我使用個例子來簡單說明一下:數組

for(int i=0;i<5;i++){
    if(i==2){
        continue;
    }
    System.out.print(i);
}

上述代碼 最終結果是爲0134 咱們能夠理解爲忽略掉了i=2的這種狀況dom

問題來了,若是咱們想使用continue但不想把那種狀況給忽略掉,怎麼辦呢?code

很簡單,其實,把在continue語句前加上i--便可隨機數

for(int i=0;i<5;i++){
    if(i==2){
        i--;
        continue;
    }
    System.out.print(i);
}

習題

下面的題目則是我作的練習題循環

題目要求:在1-10範圍內,循環生成7個數,而且不重複遍歷

Random random = new Random();
    int[] a = new int[7];
    for (int i = 0; i < a.length; i++) {
        int num = random.nextInt(10)+1;
        boolean flag = false;//是否重複
        //遍歷以前數組,若是有重複就置flag爲true
        for (int j = 0; j <a.length; j++) {
            if (num==a[j]){
                flag=true;//存在了重複的數字
                break;
            }
        }
        if (flag){
            //由於使用continue語句的時候,會忽略當前的i,從而執行i++,
            // 因此咱們在執行continue語句以前,讓i的值減1,
            // 這樣就能使得下次循環仍是停留在本來的i
            i--;
            continue;//存在重複了的數字,從新循環,獲取隨機數
        }else{
            a[i] =num;//不存在重複,則賦值
        }
    }
    for (int i = 0; i < a.length; i++) {
        System.out.print(a[i]+" ");
    }
相關文章
相關標籤/搜索