對於迴圈

for (int i = 0; i < 100; i++) {
    System.out.println(i);
}

for 迴圈的三個組成部分(由 ; 分隔)是變數宣告/初始化(此處為 int i = 0),條件(此處為 i < 100)和增量語句(此處為 i++)。變數宣告就像在第一次執行時放在 { 內部一樣完成。然後檢查條件,如果它是 true,迴圈體將執行,如果是 false,迴圈將停止。假設迴圈繼續,主體將執行,最後當到達 } 時,增量語句將在再次檢查條件之前執行。

如果迴圈只包含一個語句,則花括號是可選的(你可以使用分號一行)。但是,總是建議使用大括號來避免誤解和錯誤。

for 迴圈元件是可選的。如果你的業務邏輯包含其中一個部分,則可以省略 for 迴圈中的相應元件。

int i = obj.getLastestValue(); // i value is fetched from a method
    
for (; i < 100; i++) { // here initialization is not done
    System.out.println(i);
}

for (;;) { function-body } 結構等於 while (true) 迴圈。

Nested For Loops

任何迴圈語句都有另一個迴圈語句,稱為巢狀迴圈。迴圈具有更多內迴圈的相同方式稱為’巢狀迴圈’。

    for(;;){
        //Outer Loop Statements
        for(;;){
            //Inner Loop Statements
        }
        //Outer Loop Statements
    }

可以證明巢狀 for 迴圈可以列印三角形數字。

for(int i=9;i>0;i--){//Outer Loop
    System.out.println();
    for(int k=i;k>0;k--){//Inner Loop -1
        System.out.print(" ");
    }
    for(int j=i;j<=9;j++){//Inner Loop -2
        System.out.print(" "+j);
    }
 }