for文の構文
さて今度はfor文の説明です。for文とは、ある処理を2回、3回と決まった回数繰り返したい時に使います。
for文の構文は次のとおりです。

for文を使って繰り返す。
構文については、口で説明するよりも、例を使って説明したほうが早いですので
例を使って説明します。
(例)0〜4までを表示するプログラムをfor文を使って作成せよ。
そのプログラムは次のようになります。

最大のポイントは3行目です(当たり前か・・・)
ますint i = 0でiを宣言し、0を代入します。次にi < 5かどうかを調べます
i < 5でなければ、いきなり処理を終えてしまいます。i < 5であればfor文の{}の中の
処理に移ります。4行目の処理を終えた後、}が来てます。その後にi++をします。
ちなみにi++とは、i = i + 1のことです。i++したあとは、3行目に戻り、i < 5であるかどうかを
再び判定します。この処理を繰り返していきます。
このプログラムの場合、iが0から始まり、5より小さい間、つまりi=4まで4行目の処理を続けるので
System.out.println(i)でiの値、つまり0〜4の値が表示されるわけです。
二重のfor文
ところで、for文は重ねることができます。方法は以下のとおりです。

まず、i = 0とし、i < 5の条件を満たすので、for文の中の処理を実行します。その中に
for(int j = 0;j < 4;j++)とあります。j=0とし、j < 4の条件を満たすので、さらにfor文の中の処理を実行します
そのなかにSystem.out.println(i * 10 + j)とあります。最初にこの処理を実行する時、i=j=0なので、
0 * 10 + 0つまり、0が表示されます。その次は}とあります。つまり2つ目のループの}に来ました。
そこでj++を実行します。j=1となります。以下j=2,3と処理が続いていきます。j++でjが4になったところで
この内側のループを抜けます。このループを抜けると、次に外側のループの}に到達します。(7行目)
ここでi++を実行します。i=1となります。i<5の条件を満たすので、再び内側のループに来ます。前と同様に
内側のループを実行します。以下i=2,3,4と処理が続いていきます。そしてi++でi = 5となった時に外ループを抜けます
ここで初めて処理が終了します。2重ループの流れは以下のとおりです。3重・4重も同様です。
スコープについて
for文をやるついでに、スコープについて説明します。スコープとは変数の有効範囲をさします。
実はif文、for文の中で宣言した変数は、if文、for文を抜けると消滅してしまいます。
簡単に言えば、{}の中で宣言した変数は、}を抜けると、消滅してしまうということです。
これはガーベジコレクションという便利な機能が働いているためです。これは後ほど説明します。
このことを頭に入れておかないと、コンパイラにはねられるので注意してください。
for文については慣れるまでが大変ですが、慣れれば楽です。練習問題も用意しましたので頑張って覚えましょう
練習問題
問1 次のプログラムを実行した時、画面に表示される値はいくつになるか

問2 次のプログラムを実行した時、画面に表示されるxの値はいくつになるか

問3 整数xを入力し、1〜xの和を求めよ。
ヒント:1〜xまで繰り返す。
x = 1のとき、0+1,x=2のとき、0+1+2,x=3のとき、0+1+2+3・・・・で算出できる
問1の解答 24
問2の解答 60
問3の解答