好程式設計師Java培訓分享For迴圈詳解

好程式設計師發表於2020-10-21

   好程式設計師Java 培訓分享 For 迴圈詳解 ,文中透過示例程式碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,下面我們一起來看一下吧。

 

對於java 中的 for 迴圈,我們用的最多的無非就是下面這個語句:

 

for (int i = 0; i < 10; i++) {

  System.err.println(i);

}

 

   但是對於for 迴圈來說,它也有很多變體,如果不清楚瞭解 for 迴圈的結構原理,遇上一些變體的 for 迴圈,可能一時不太明白它的含義, for 迴圈雖然有很多變體,但都離不開括號內 3 條語句的模式(除了增強 for 迴圈模式,後面再討論)

 

for 迴圈的結構:

 

for( 語句 A; 語句 B; 語句 C){

 

   // 迴圈體

 

}

 

   其中,語句A 在整個迴圈過程中,只會執行一次;語句 B 必須是布林型別的表示式(當然也可以不寫,如果寫就必須是布林型別表示式),透過該布林表示式去判斷是否繼續執行迴圈體;語句 C 會在每次迴圈結束後執行,也就是說,迴圈體執行多少次,語句 C 就會執行多少次。

 

其中語句的執行順序是:

 

語句A →(語句 B → 迴圈體 → 語句 C )→(語句 B → 迴圈體 → 語句 C )→ ... →退出迴圈

 

下面簡單介紹一些for 迴圈的變體:

 

變體一:語句豐富化多樣化,只要保證語句A C 都是一條語句,語句 B 是布林表示式,語句想怎麼寫由你自己定。

 

for (int i = 0, j = 0; i < 10 | j< 12; i++, j++) {

  System.err.println(i);

  System.err.println(j);

  System.err.println("=========");

}

 

變體二:語句A 省略

 

boolean flag = true;

int m = 0;

for (;flag; m++){

  if (m==10)

    flag=false;

  System.err.println(m);

}

 

變體三:語句B 省略,此時只有從迴圈體內退出迴圈,否則是無限迴圈。

 

int m = 0;

for (;; m++){

  if (m==10)

    break;

  System.err.println(m);

}

 

變體四:語句C 省略

 

int m = 0;

for (;;){

  if (m==10)

    break;

  System.err.println(m);

  m++;

}

 

   說明:以上的變體,只是相對於我們常用的形式來講的,變體的結構本質是不變的,我們沒必要去刻意的使用變體的形式。之所以提出來講,只是希望以後遇到變體的情況,能儘快看懂迴圈的含義,不至於看到別人寫的程式碼,和自己寫的方式不一樣,然後一臉蒙圈。上面並未列出所有變體,簡單來說,語句A B C 都是可以單獨省略的。

 

對於增強for 迴圈,就不多做介紹了,用的也比較多,基本結構就是:

 

Integer[] arr = new Integer[]{1,2,3,4};

for (Integer a : arr){

  System.err.println(a);

}

  

List<String> list = new ArrayList<>();

//add str...

for (String str : list){

  System.err.println(str);

}


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69913864/viewspace-2728467/,如需轉載,請註明出處,否則將追究法律責任。

相關文章