ソースコード源文件
|
---|
実行結果
|
ソースコード源文件
|
---|
実行結果
|
初期化(int i = 0)は、繰り返しの準備を行う部分で、繰り返しの前にたった一度だけ実行されます。「int i = 0」で、変数 i を宣言して0で初期化しています。この部分は繰り返し中は実行されません。
条件式(i < 3)は、繰り返しを続ける条件を表現した式です。ここに書いた条件が満たされていたら、繰り返しの処理を始めます。言い換えれば、ここに書いた条件を満たさなかったら繰り返しの処理へ進まず、for 文を終えるわけです。i < 3ですから、変数 i が3未満(2以下)の間、繰り返しの処理が行われることになります。変数 i が3以上になったら、繰り返しは終わりです。
次の第一歩(i++)は、繰り返す処理が1回分終わった後にいつも実行されます。ここには、繰り返しを次に進めるための処理が書かれます。i++ です。これは「変数 i を増やす」という処理です。変数 i の値が0だったら1に、i の値が1だったら2になるのです。
変数 i の値が3より小さいかどかを調べます。「条件式」のチェックです。変数 i の値は0で、当然ながら3より小さいです。ですから、条件式 i < 3の値は ture(真)になり、この条件は満たされます。そこで、以後の「繰り返す処理」を実行しにいきます。
ここが、{ と } でくくられた「繰り返す処理」に相当します。「System.out.println(i);」、今変数 i (i という名前の箱)にはさっき入れた0がまだ入っています。値は0です。したがって「System.out.println(i);」を実行すると、0が表示されます。
さて、これで繰り返す処理は実行しました。今度は「次の一歩」の実行です。ここで制御は3行目に戻ります。「次の一歩」即ち、i++ が実行されます。演算子 ++ は変数の値を1増やすものでしたから、ここで変数 i の値は0から1に変わります。
次に、もう一度「条件式」を調べにいきます。変数 i の値は、今1になっています。これを3と比較しましょう。やはり、i はまだ3より小さいですね。条件式 i < 3 の値は true です。また、「繰り返す処理」を実行しにいきましょう。今度は先ほどと違い、変数 i の値は1になっています。したがって、1が表示されることになります。実行する文は同じでも、変数の値が変わっているので、表示も変わるのです。
さて、これで繰り返す処理は実行しました。今度は、また「次の一歩」の実行です。ここで制御は、またまた3行目に戻り、i++ が実行されます。これで変数 i の値あ2になります。
次に、またまた「条件式」を調べに行きます。変数 i の値は今度は2になっています。やはり、条件式 i < 3 の値は true です。4行目を実行しましょう。画面には2が表示されることになります。「次の一歩」で変数 i の値は3になります。
変数 i の値は3です。「条件式」を調べましょう。i の値が3になったので、やっと条件式 i < 3の値が false になりました。条件式の値が false になったら繰り返しは終了します。これで、やっと for 文が終了し、「System.out.println("end");」を実行し、プログラムを終了します。
「条件式」は「繰り返す処理」の前に調べる
「次の一歩」は「繰り返す処理」の後に実行
ソースコード源文件
|
---|
実行結果
|
繰り返す処理の内容が少し増えています。if 文のときと同様に、{ と } でくくられている部分には、いくらでもたくさんの処理を書くことができあます。
「System.out.print」は「System.out.println」とほぼ同じ動作をしますが、最後に改行はつきません。
for 文の繰り返しの範囲である { } の中に、別の for 文を入れることもできます。
ソースコード源文件
|
---|
実行結果
|
まず、外側の大きな for 文があります。その中には繰り返す処理が3つあって、一つ目は「System.out.print」、2つ目は「for」、3つ目は「System.out.println」です。
内側の小さな for 文の中の繰り返す処理は一つあって、それは、「System.out.print」です。for 文は、その中の繰り返す処理にどんなものが含まれているかなんて気にしません。System.out.print だろうが、for だろうが、ただ機械的に繰り返すだけです。
処理の区分けがはっきりするように、字下げが行われていることに気づきですか。for 文の内側に入るごとに、行の始まりが少し右に寄っています。これを字下げといい、繰り返しの範囲が人間にはっきりわかるようになっています。字下げはプログラムを読む人間のためのものであり、字下げがあってもなくてもプログラムの動作にはまったく影響しません。字下げは、インデント(indent)またはインデンテーションとも呼ばれます。字下げにはスペース(空白)キーかタブキーを使います。
Java 言語では、処理をまとめるのに、{ } が使われています。ことろで、if 文や for 文の { } は、場合によっては省略することが可能です。それは処理が一つの文のときです。処理の内容が複数の文になるときには、{ } を省略することはできません。
ソースコード源文件
|
---|
実行結果
|
このエラーは、変数 i が for 文の初期化の部分で宣言されているため、for 文の外で使えないからです。もしも for 文を終了した後でも変数 i を引き続き使いたい場合には、for 文の前で宣言しておく必要があります。
ソースコード源文件
|
---|
実行結果
|
Chapter6 @ Java言語目録 @ HomeWork List @ 昭亮's Homepage