forループは、ある条件が満たされるまで、まとまった文を繰り返し実行するための仕組みです。このループは、4つの部分からできています。
for (initialization; test; update) {
body;
}
initializationは、ループの初期状態を設定する部分で、ループの開始時にちょうど1回だけ実行されます。ふつうは、テスト式と更新式で使う変数を宣言して代入します。たとえば、次のとおりです。
int i = 1
test式は、ループを終了すべきかどうかを判定します。真と評価されれば、本体が実行され、続いて更新式が実行されます。偽と評価されれば、本体も更新式も実行されず、ループの閉じ括弧(})の後ろから実行が再開されます。ふつうは、initializationブロックで代入した変数をチェックします。たとえば、次のとおりです。
i <= 10
ループ本体を実行したあとに、update式が実行されます。ふつうは、ループ変数を何らかの値だけ増やしたり減らしたりします。たとえば、次のとおりです。
i++
forループで最初の4つの平方を出力すると、次のようになります。
for (int i = 1; i <= 4; i++) {
System.out.println(i * i);
}
/* =>
1
4
9
16
*/
コレクションのすべての要素を繰り返し処理するなら、for-eachループのほうが適していますが、次のようにforループでも書けます。
for (int i = 0; i < array.length; i++) {
System.out.print(array[i]);
}
forループには、for-eachループにはない利点がいくつかあります。
forループを使えます。