Javaのfor文解説

この記事の内容

  • for文とはどんな時に使うと便利なのか?
  • for文の基本的な書き方
  • for文のネストについて
  • まとめ

for文とはどんな時に使うと便利なのか?

for文は同じ処理を繰り返し行いたいときに使います!

例えばコンソール上に「こんにちは」を100回表示させたい時、System.out.println(“こんにちは”);を100回も記述するのは面倒くさいですよね?(笑)
そんな時、for文を使うと簡単に記述することができます。

for文の基本的な書き方

今回は「Hello」を5回表示させるfor文を例に解説をしていきます。

// Helloを5回表示させるfor文
for (int i = 0; i < 5; i++) {
   System.out.println("Hello");
}

// 実行結果
Hello
Hello
Hello
Hello
Hello

forの後にある()の中に初期化式、条件式、変化式の3つの式を書いていきます。
そして、{}の中に繰り返し行いたい処理の内容を書いていきます。今回は「Hello」を5回表示させるための処理を書いています。

では初期化式、条件式、変化式の3つについて詳しく解説していきます。

1、初期化式
これはfor文の中で最初に1度だけ実行される式です。もしfor文の繰り返しが終わり、もう一度同じfor文が実行されることがあった場合はもう一度初期化式が実行されます。
この変数を用いることで繰り返しの回数を管理していきます。そのため、初期化式で宣言された変数はループカウンタと呼ばれます。
「int i = 0;」のようにint型の変数を宣言して初期値を代入します。変数名は慣習的にiと宣言します。もし、for文の中にfor文を書くことがあれば、そのfor文の初期化式の変数名は「j」とします。またさらにそのfor文の中にfor文を書くことがあれば「k」といった感じでアルファベットを順番に使っていきます。

2、条件式
繰り返す条件を指定する式です。この条件式は比較演算子を用いて指定をします。条件式で指定した条件を満たしている場合(true)は繰り返し処理を行います。満たしていない場合(false)は繰り返し処理が行われないです。

3、変化式
繰り返し処理が行われた後に実行される式です。つまりfor文の中で一番最後に実行される式になります。初期化式、条件式と一緒に()内に書きますが、すぐに実行されるわけではないです。

この解説で例に出しているfor文は「Hello」を5回表示させる処理を書いていますが、処理の流れを図に書いてみると上記のような流れになります。
冒頭にも書いてありますが、for文は同じ処理を繰り返し行うときに使うものということを意識しながら書いていきましょう!

for文のネストについて

「ネスト」とは「入れ子」を意味しています。
つまり、for文のネストとはfor文の中にfor文が入っていることを指しています。

// for文のネスト
for (int i = 0; i < 5; i++) {
  for (int j = 0; j < 3; j++) {
	System.out.println("jに代入されている数字:" + j);
  }
  System.out.println(i + 1 + "回目の繰り返しが終わりました\n");
}

// 実行結果
jに代入されている数字:0
jに代入されている数字:1
jに代入されている数字:2
1回目の繰り返しが終わりました

jに代入されている数字:0
jに代入されている数字:1
jに代入されている数字:2
2回目の繰り返しが終わりました

jに代入されている数字:0
jに代入されている数字:1
jに代入されている数字:2
3回目の繰り返しが終わりました

jに代入されている数字:0
jに代入されている数字:1
jに代入されている数字:2
4回目の繰り返しが終わりました

jに代入されている数字:0
jに代入されている数字:1
jに代入されている数字:2
5回目の繰り返しが終わりました

for文の中にfor文を書いた場合の例とその実行結果です。

まずは一番最初に書いてあるfor文から見ていきましょう。

for (int i = 0; i < 5; i++)

このfor文の()の中を見てみると5回繰り返しを行うことが分かります。
つまり、このfor文の中にある処理が5回行われます。

では続いて2行目のfor文を見ていきましょう。

for (int j = 0; j < 3; j++)

このfor文の()の中を見てみると3回繰り返しを行うことが分かります。
そして今回の例では「for (int i = 0; i < 5; i++)」の中に記載されているfor文になります。そのため、このfor文は3回繰り返しを行うという処理が5回繰り返されることになります。

このように外側のfor文は内側のfor文の処理が終わることで1回分の繰り返しを完了することができます。
さらにこのとき、気にしていただきたいことが、内側のfor文についは外側のfor文の繰り返し処理が1回終わるごとにループカウンタがリセットされている点です。
こちらは初期化式の解説で書きましたが、for文自体がもう一度呼ばれるとループカウンタもリセットされる働きになっているためです。

例えば腕立て伏せ10回を5回やってくださいとなったとき、1から10まで数えながらそれを5回繰り返しますよね?
そのようなイメージを持ってもらえると分かりやすいと思います。

今回の例の場合だと腕立て伏せ3回を5回繰り返すようなイメージになります。

まとめ

今回はfor文の基本的な書き方についてまとめてみました!
for文は繰り返し同じことを行いたいときに便利なものです。
ぜひ皆様の学習の参考になれば嬉しいです!

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA



reCaptcha の認証期間が終了しました。ページを再読み込みしてください。