Javaの勉強を始めたときに、必ずといっていいほど出てくるのが「繰り返し処理」。
その中でも、特に多く使われるのが for文 です。
「繰り返すってどうやって?」「配列を順番に処理したいんだけど…」
そんな疑問を持っている初心者の方でも、この記事を読めば for文 をスッキリ理解できるようになります。
今回は、Javaの for文 の基本から応用、よくある間違いまで、分かりやすく解説していきます。
🔰 for文ってなに?
Javaの for文 は、「決まった回数」処理を繰り返すための文です。
たとえば、「1から5までの数字を順番に表示したい」といったときに使います。
【イメージ】
「◯回くり返してね」と命令を出して、Javaがその通りに動いてくれる便利な機能です。
🧱 基本構文と意味
for (初期化; 条件; 変化) {
// くり返したい処理
}
それぞれのパーツの意味は以下のとおりです。
| 部分 | 説明 |
|---|---|
| 初期化 | 繰り返しの準備(変数のスタート地点) |
| 条件 | 処理を続けるか判断(trueなら続ける) |
| 変化 | 繰り返しごとに変化させる(カウントアップなど) |
📌 実際のコード例(1〜5を表示)
for (int i = 1; i <= 5; i++) {
System.out.println(i);
}
解説:
int i = 1→ 1からスタートi <= 5→ iが5以下ならくり返すi++→ iを1ずつ増やしていく
このコードを実行すると、以下のように出力されます:
1
2
3
4
5
🔁 配列とfor文
Javaでは配列と for文 をセットで使うことがよくあります。
int[] scores = {90, 80, 70};
for (int i = 0; i < scores.length; i++) {
System.out.println(scores[i]);
}
scores.length→ 配列の要素数(この例では3)scores[i]→ 配列のi番目を取り出す
このように、配列の内容を順番に処理するときに for文 が役立ちます。
🌱 拡張for文(for-each)で簡単に!
Javaには、配列やリストをもっと簡単に処理できる「拡張for文(for-each)」もあります。
for (int score : scores) {
System.out.println(score);
}
score→ 配列scoresの中身を1つずつ取り出してくれる- 書き方がシンプルでミスも減らせます
🧠 ネスト(入れ子)のfor文
for文 の中に for文 を書くと、「二重ループ」になります。
for (int i = 1; i <= 2; i++) {
for (int j = 1; j <= 3; j++) {
System.out.println("i=" + i + ", j=" + j);
}
}
出力結果は次のようになります:
i=1, j=1
i=1, j=2
i=1, j=3
i=2, j=1
i=2, j=2
i=2, j=3
🧮 for文と条件文の組み合わせ
繰り返し処理の中に if文 を組み合わせることで、特定の条件だけを処理することができます。
偶数だけを表示する
for (int i = 1; i <= 10; i++) {
if (i % 2 == 0) {
System.out.println(i);
}
}
このコードは、1~10の中で「偶数」だけを出力します。
🧯 break文とcontinue文
for文 の中で、特定の条件になったら途中でループを抜けたり、次のループにスキップしたりすることができます。
break:ループを途中でやめる
for (int i = 1; i <= 10; i++) {
if (i == 5) break;
System.out.println(i);
}
出力は「1~4」までで止まります。
continue:その回だけスキップする
for (int i = 1; i <= 5; i++) {
if (i == 3) continue;
System.out.println(i);
}
「3」だけが出力されません。
📚 実用的な活用例
配列から特定の値を探す
int[] data = {10, 20, 30, 40};
int target = 30;
boolean found = false;
for (int i = 0; i < data.length; i++) {
if (data[i] == target) {
found = true;
break;
}
}
if (found) {
System.out.println("見つかりました!");
} else {
System.out.println("見つかりませんでした。");
}
⚠️ よくある間違い
❌ 無限ループに注意
for (;;) {
System.out.println("終わらない…");
}
条件を書かないと、永遠にくり返してしまいます。
止まらないプログラムにならないよう注意しましょう。
❌ 配列の範囲外アクセス
int[] arr = {1, 2, 3};
System.out.println(arr[3]); // エラー!
Javaの配列は0から始まるので、arr[3]は存在しません。ArrayIndexOutOfBoundsExceptionというエラーが出てしまいます。
✅ まとめ
Javaの for文 は、プログラミングの基礎であり、さまざまな場面で活躍します。
配列の処理や繰り返し演算、条件分岐と組み合わせた処理など、活用方法は無限大です。
ポイントをおさらいすると:
for (初期化; 条件; 変化)の構造をしっかり理解する- 配列との組み合わせで強力に活用できる
- breakやcontinueを使えば柔軟な制御も可能
- 拡張for文は配列の処理を簡単にしてくれる
Javaの基礎力を固めるためには、まずこの for文 を何度も書いて体で覚えることが一番です。
もっとJavaをしっかり学びたい人には、絶対にJavaプログラマーになりたい人へ。 がオススメです。
さらに、現役エンジニアのコードレビューを受けたい人、転職を本気で考えている人には、サイゼントアカデミー という選択肢もあります。
正しい学び方で、あなたもJavaマスターへの第一歩を踏み出しましょう!


コメント