Java入門 〜繰り返し処理をマスターする〜
この記事で学べること
- 繰り返し処理とは何か、なぜ必要なのか
- for文の基本的な書き方と使い方
- while文の基本的な書き方と使い方
- for文とwhile文の使い分け
- 繰り返しを使った実践的なプログラム
はじめに – 今日やること
前回の振り返りです!
前回は、if文で条件によってプログラムの動きを変える方法を学びました。
変数(データ)とif文は、プログラミングの土台です。
Javaだけでなく、Python、JavaScript、C言語など、ほとんどのプログラム言語で使われています。
だからこそ、この2つは絶対に欠かせない存在なんです。
そして今回は、僕たちが似たようなコードを何度も書かなくて済む技術、「繰り返し処理」について学びます!
例えば、「こんにちは」を100回表示するプログラムも、たった3行で書けます!
今日のゴール
- for文を使って繰り返し処理ができる
- while文を使って繰り返し処理ができる
- for文とwhile文の使い分けがわかる
焦らず、ゆっくり進めていきましょう!
繰り返し処理って何? なぜ必要?
繰り返し処理とは、同じ処理を何度も実行できる仕組みです!
日常生活で例えると、このようなイメージです:
- 階段を1段ずつ登る
- ラジオ体操を毎朝やる
- 100回腕立て伏せをする

プログラムでも、繰り返しが必要な場面はたくさんあります。
例えば、「1から100までの数字をコンソールに表示させたい」としたら、皆さんどうしますか?
そう! それはコピペです!
java
System.out.println(1);
System.out.println(2);
System.out.println(3);
// ...100行繰り返す
System.out.println(100);
コピペでも、100行コピペすれば実現できます。ただし、これには落とし穴があります。
100回が1000回に変わったらどうでしょうか?
また、1000回書いた後で「やっぱり300回で良かった」となったらどうでしょうか?
正直、コピペでもしんどくないですか?
繰り返し文があれば楽になる!
これを楽にしてくれるのが、繰り返し文です!
繰り返し文を使えば:
- 指定した回数だけ繰り返す: 「100回繰り返す」「1000回繰り返す」と書くだけ
- 特定の条件を満たす限り繰り返す: 「〇〇が△△になるまで繰り返す」
これにより、100回なら「100」、1000回なら「1000」と書くだけで処理を繰り返せます。
Javaには、繰り返し文として「for文」と「while文」の2つがあります。
それでは、実際に使ってみましょう!
for文の基本 – 回数が決まっている繰り返し
for文とは
for文は、「決まった回数だけ繰り返す」時に使います。
例えば:
- 「こんにちは」を10回表示したい
- 1から100までの数字を表示したい
- 配列の全要素を処理したい
こんな時に、for文がピッタリです!
前の章で「コピペは100回ならまだしも、1000回は大変」という話をしましたよね。for文を使えば、たった数行で何回でも繰り返せるようになります。
しかも、増やしたり減らしたり、変更したい場合は数字を変えるだけで実現できます!
for文の書き方
for文は、以下のように書きます:
for (初期化; 条件; 更新) {
// 繰り返したい処理
}
何やら難しく見えるかもしれませんが、ゆっくり1つずつ見ていけば大丈夫です。
各部分の役割を説明しますね:
- 初期化: カウンター変数を用意する(最初に1回だけ実行される)
- 条件: いつまで繰り返すかを決める(毎回チェックされる)
- 更新: 1回繰り返すごとに、カウンター変数を増やす

言葉だけだとわかりにくいので、実際のコードで見てみましょう!
実際に動かしてみよう
例1: 「こんにちは」を5回表示する
for (int i = 0; i < 5; i++) {
System.out.println(“こんにちは”);
}
実行結果:
こんにちは
こんにちは
こんにちは
こんにちは
こんにちは
どうですか? たった3行で5回繰り返せました!
このコードを詳しく見てみましょう:
- 初期化(int i = 0): 変数iを0から始める
- 条件(i < 5): iが5より小さい間、繰り返す
- 更新(i++): 1回繰り返すごとに、iを1増やす
変数iは、こんな風に変化しています:
1回目: i = 0 → 「こんにちは」を表示 → i を1増やす
2回目: i = 1 → 「こんにちは」を表示 → i を1増やす
3回目: i = 2 → 「こんにちは」を表示 → i を1増やす
4回目: i = 3 → 「こんにちは」を表示 → i を1増やす
5回目: i = 4 → 「こんにちは」を表示 → i を1増やす
6回目: i = 5 → 5 < 5 はfalse(間違い) → 条件を満たさないので繰り返し終了!

例2: カウンターを使って「何回目」を表示する
今度は、変数iを使って「何回目」かを表示してみましょう。
for (int i = 1; i <= 10; i++) {
System.out.println(i + “回目”);
}
実行結果:
1回目
2回目
3回目
4回目
5回目
6回目
7回目
8回目
9回目
10回目
さっきと少し違うところに気づきましたか?
- int i = 1: iを1から始めている(さっきは0)
- i <= 10: iが10以下の間繰り返す(さっきは5より小さい)
このように、for文は自分の目的に合わせて調整できるんです!
for文の「i」って何?
よく「int i = 0のiって何ですか?」と質問されます。
答えは: ただのカウンター変数の名前です!
iは「index(インデックス)」や「iteration(繰り返し)」の頭文字から来ていて、プログラマーの間では慣習的に使われています。もちろん、countやnumなど、他の名前でもOKです。
// これでも動きます
for (int count = 0; count < 5; count++) {
System.out.println(“こんにちは”);
}
ただ、迷ったらiを使うのが一般的です。
while文の基本 – 条件が続く限り繰り返し
while文とは
while文は、「条件が正しい間、ずっと繰り返す」時に使います。
for文との違いは:
- for文: 回数が決まっている時(「10回繰り返す」など)
- while文: 回数がわからない、条件が続く限り繰り返す時
例えば:
- ユーザーが「終了」と入力するまで繰り返す
- 正しい値が入力されるまで繰り返す
- ゲームでHPが0になるまで戦闘を繰り返す
こんな時に、while文が便利です!
while文の書き方
while文は、以下のように書きます:
while (条件) {
// 繰り返したい処理
}
for文よりシンプルですよね!
- 条件: この条件がtrue(正しい)の間、ずっと繰り返す
- 条件がfalse(間違い)になったら、繰り返し終了

実際のコードで見てみましょう!
実際に動かしてみよう
例1: カウントが5未満の間、繰り返す
int count = 0;
while (count < 5) {
System.out.println(“カウント: ” + count);
count++;
}
実行結果:
カウント: 0
カウント: 1
カウント: 2
カウント: 3
カウント: 4
このコードの動きを見てみましょう:
- 最初、countは0
- 0 < 5はtrue → 「カウント: 0」を表示 → countを1増やす
- 1 < 5はtrue → 「カウント: 1」を表示 → countを1増やす
- …繰り返す
- 5 < 5はfalse → 繰り返し終了!
⚠️ 重要な注意点: 無限ループに気をつけよう!
while文で最も注意すべきことがあります。それは、無限ループです。
悪い例(無限ループ)
int count = 0;
while (count < 5) {
System.out.println(“カウント: ” + count);
// count++を忘れた!
}
このコードは、永遠に終わりません!
なぜかというと:
- countは0のまま
- 0 < 5は常にtrue
- ずっと「カウント: 0」が表示され続ける
count++を忘れると、条件が永遠にtrueのままになってしまうんです。
これ、本当によくあるミスなんです…! もしプログラムが止まらなくなったら、Ctrl+C(Macなら Command+C)で強制終了してください。
良い例(ちゃんと終わる)
int count = 0;
while (count < 5) {
System.out.println(“カウント: ” + count);
count++; // これを忘れずに!
}
必ず、条件を変化させる処理(count++など)を入れましょう!
例2: 条件を使った繰り返し
while文の本領発揮は、「回数がわからない繰り返し」です。
boolean continueLoop = true;
int number = 0;
while (continueLoop) {
System.out.println(“数字: ” + number);
number++;
if (number >= 3) {
continueLoop = false; // 条件をfalseにして終了
}
}
実行結果:
数字: 0
数字: 1
数字: 2
このように、条件を満たしたら終了という使い方もできます。
for文とwhile文、どっちを使えばいい?
迷いますよね。基本的には:
回数が決まっている → for文
- 「10回繰り返す」
- 「配列の全要素を処理」
- 「1から100まで」
条件が続く限り → while文
- 「ユーザーが終了と言うまで」
- 「正しい値が入力されるまで」
- 「HPが0になるまで」
ただし、どちらでも書けます。慣れるまでは、for文を使うことが多いです。
同じ処理をfor文とwhile文で書いてみる
// for文
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
// while文
int i = 0;
while (i < 5) {
System.out.println(i);
i++;
}
どちらも同じ結果になります!
while文のポイント
while文を使う時は、以下のポイントを覚えておきましょう:
- 条件を必ず変化させる: じゃないと無限ループになる
- 回数がわからない時に便利: 「〇〇まで繰り返す」という時
- for文より自由度が高い: 複雑な条件も書きやすい
慣れるまでは、「回数が決まっている時はfor文」と覚えておけば大丈夫です!
実践: 繰り返しを使ったプログラムを作ろう
ここまでで、for文とwhile文の基本を学びました。
この章では、実際に繰り返しを使ったプログラムを作ってみましょう!
「本当に使えるようになった!」と実感できるはずです。
例1: 1から100までの合計を計算する
よくある問題ですが、繰り返しの練習にピッタリです。
int sum = 0;
for (int i = 1; i <= 100; i++) {
sum += i; // sum = sum + i と同じ
}
System.out.println(“1から100までの合計: ” + sum);
実行結果:
1から100までの合計: 5050
どうやって動いているの?
- 最初、sumは0
- i = 1の時: sum = 0 + 1 = 1
- i = 2の時: sum = 1 + 2 = 3
- i = 3の時: sum = 3 + 3 = 6
- …繰り返す
- i = 100の時: sum = 4950 + 100 = 5050
このように、繰り返すたびに合計が増えていくんです!
例2: 偶数だけを表示する
1から20までの数字のうち、偶数だけを表示してみましょう。
for (int i = 1; i <= 20; i++) {
if (i % 2 == 0) { // 2で割った余りが0なら偶数
System.out.println(i);
}
}
実行結果:
2
4
6
8
10
12
14
16
18
20
ポイント
i % 2は「iを2で割った余り」- 余りが0なら偶数、1なら奇数
- if文と組み合わせることで、条件に合うものだけ処理できる
繰り返し + if文 = 強力なプログラムが書けるようになります!
for文は、増やすだけじゃなく減らすこともできるんです!
例3: while文で条件を使った繰り返し
最後に、while文を使った例も見てみましょう。
int number = 1;
while (number < 100) {
System.out.println(number);
number *= 2; // number = number * 2 と同じ(2倍にする)
}
実行結果:
1
2
4
8
16
32
64
どうやって動いているの?
- 最初、numberは1
- 1 < 100はtrue → 1を表示 → numberを2倍(2になる)
- 2 < 100はtrue → 2を表示 → numberを2倍(4になる)
- 4 < 100はtrue → 4を表示 → numberを2倍(8になる)
- …繰り返す
- 128 < 100はfalse → 繰り返し終了!
while文は、こういう「規則的じゃない変化」の時に便利なんです!
練習問題: 自分で作ってみよう!
以下のプログラムを、自分で作ってみてください:
問題1: 1から10までの奇数を表示する
ヒント: i % 2 != 0 で奇数かどうか判定できます
問題2: 1から50までの3の倍数を表示する
ヒント: i % 3 == 0 で3の倍数かどうか判定できます
問題3: 1から10までの数字を、逆順に表示する
ヒント: 10から1までカウントダウンすればOKです
焦らず、1つずつ試してみてくださいね!
よくあるエラーと注意点
繰り返しを使っていると、必ずエラーに遭遇します。
これは誰でも通る道なので、焦らなくて大丈夫です!
ここでは、よくあるエラーと解決方法を紹介します。つまずいた時に、ここを見返してくださいね。
エラー1: 無限ループ(プログラムが止まらない!)
症状:
- プログラムが終わらない
- コンソールに同じ文字が延々と表示され続ける
- パソコンが重くなる
原因:
// 悪い例
int i = 0;
while (i < 10) {
System.out.println(i);
// i++を忘れた!
}
条件を変化させる処理(i++など)を忘れると、条件が永遠にtrueのままになります。
解決方法:
- Ctrl+C(Macなら Command+C)で強制終了
- 条件を変化させる処理があるか確認
- i++やcount++を忘れずに書く
// 良い例
int i = 0;
while (i < 10) {
System.out.println(i);
i++; // これを忘れずに!
}
これ、本当によくあるミスなんです…! 私も初心者の頃、何度も無限ループにハマりました。
エラー2: 1回多く/少なく繰り返してしまう
症状:
- 「10回繰り返したいのに、9回しか繰り返さない」
- 「10回繰り返したいのに、11回繰り返す」
原因:
// 9回しか繰り返さない例
for (int i = 1; i < 10; i++) { // i < 10 だと9回
System.out.println(i);
}
// 11回繰り返す例
for (int i = 0; i <= 10; i++) { // i <= 10 だと11回(0〜10)
System.out.println(i);
}
ポイント:
<は「未満」(10は含まない)<=は「以下」(10を含む)- 0始まりか1始まりかで回数が変わる
解決方法:
// 10回繰り返す(1〜10)
for (int i = 1; i <= 10; i++) {
System.out.println(i);
}
// 10回繰り返す(0〜9)
for (int i = 0; i < 10; i++) {
System.out.println(i);
}
どちらも10回繰り返しますが、表示される数字が違います。自分の目的に合わせて選びましょう!
エラー3: 波カッコ{}を忘れる
症状:
- 「繰り返したい処理が1回しか実行されない」
- 意図しない動きをする
原因:
// 悪い例
for (int i = 0; i < 5; i++)
System.out.println(“こんにちは”);
System.out.println(“これは1回しか実行されない”);
波カッコ{}がないと、直後の1行だけが繰り返されます。
解決方法:
// 良い例
for (int i = 0; i < 5; i++) {
System.out.println(“こんにちは”);
System.out.println(“これも繰り返される”);
}
複数行を繰り返したい時は、必ず波カッコ{}で囲みましょう!
エラー4: 変数のスコープ(有効範囲)
症状:
- 「変数iが見つかりません」というエラーが出る
原因:
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
System.out.println(i); // エラー! iはfor文の中でしか使えない
for文の中で宣言した変数は、for文の外では使えません。
解決方法:
// 方法1: for文の外で宣言する
int i;
for (i = 0; i < 5; i++) {
System.out.println(i);
}
System.out.println(i); // OK
// 方法2: 別の変数を使う
for (int i = 0; i < 5; i++) {
System.out.println(i);
}
int result = 10; // 別の変数
System.out.println(result);
エラー5: セミコロン;の付け忘れ/付けすぎ
症状:
- コンパイルエラーが出る
- 繰り返しが動かない
原因:
// 悪い例1: セミコロンを付けすぎ
for (int i = 0; i < 5; i++); { // ここに;があると、何もしないfor文になる
System.out.println(“表示されない”);
}
// 悪い例2: セミコロンを忘れる
for (int i = 0; i < 5; i++)
System.out.println(i) // セミコロンがない!
解決方法:
- for文の()の後には
;を付けない - 処理の最後には
;を付ける
注意点: while文は条件を必ず変化させる
while文を使う時は、必ず条件を変化させる処理を入れてください。
// 悪い例
boolean flag = true;
while (flag) {
System.out.println(“無限ループ!”);
// flagを変化させる処理がない!
}
// 良い例
boolean flag = true;
int count = 0;
while (flag) {
System.out.println(“ループ中”);
count++;
if (count >= 5) {
flag = false; // 条件を変化させる
}
}
次に学ぶべきこと
長い間、お疲れ様でした!
今日は、繰り返し処理を学びましたね。
今日学んだこと
- 繰り返し処理の基本(同じ処理を何度も実行できる)
- for文の書き方(回数が決まっている繰り返し)
- while文の書き方(条件が続く限り繰り返し)
- 繰り返しを使った実践的なプログラム(合計計算、偶数表示など)
- よくあるエラーと解決方法(無限ループ、回数のズレなど)
これで、もっと複雑なプログラムが作れるようになりました!
これから何をすべきか
これからは、たくさん書いて動かすことが一番の勉強です!
自分で回数を変えたり、新しいプログラムを作ったりして、どんどん実験してみてください。
失敗しても大丈夫。何度でもやり直せます。
これで、プログラミングの基礎が完成しました!
前回までの「変数(データ)」「if文」、そして今回の「繰り返し処理」。
この3つで、プログラミングの基礎が完成しました!
変数 + if文 + 繰り返し = どんなプログラムでも書ける!
この3つがあれば、理論上はどんなプログラムでも書くことができます。(大変ではありますが)
実は、これから学ぶこと(配列、メソッド、クラスなど)は、すべて「僕たちが楽をするために作られた仕組み」なんです。
でも、この3つ(変数、if文、繰り返し)は、絶対に欠かせない土台です。
よく頑張りましたね!
次のステップ: 配列を学ぼう
次は、配列(Array)を学んでいきます!
配列を学ぶと:
- たくさんのデータをまとめて管理できる(例: 生徒10人の点数)
- 繰り返し処理との相性が抜群に良い
- もっと効率的にプログラムが作れる
これを使うと、僕たちがもっと楽にプログラムを作れるようになります!
焦らず、一緒に頑張りましょう!
まとめ
お疲れ様でした! 今日学んだことを振り返ってみましょう。
今日のポイント
✅ 繰り返し処理は同じ処理を何度も実行できる仕組み
✅ for文は回数が決まっている時に使う
✅ while文は条件が続く限り繰り返す時に使う
✅ 無限ループに注意する(条件を変化させる処理を忘れずに)
✅ 繰り返し + if文で、もっと複雑なプログラムが作れる
今日、あなたは「同じ処理を効率的に実行する力」を手に入れました!
前回までの「変数(データ)」「if文」、そして今回の「繰り返し処理」で、プログラミングの基礎が完成しましたね。
この調子で、次のステップに進みましょう!
次に読むべき記事
次は、配列を学んで、たくさんのデータをまとめて管理できるようにしましょう!
- Java入門 〜配列でデータをまとめて管理する〜(2026年2月10日 公開予定〜) 配列を使って、大量のデータを効率的に扱う方法を学びます。
前回・関連記事
- Java入門 〜if文で条件分岐をマスターする〜
前回の記事です。条件によって処理を変える方法を学びましたね! - Java入門 〜変数とデータ型を理解する〜
変数でデータを保存する方法を学びました! - Java入門 〜最初のプログラムを書く〜
最初の記事です。Hello Worldを動かしましたね!
質問や感想をお待ちしています!
この記事でわからなかったことや、つまずいたポイントがあれば、お気軽にコメント欄やお問い合わせフォームからご連絡ください!
また、「繰り返し処理がわかりました!」の報告も大歓迎です。一緒に喜びたいです!
それでは、次の記事でお会いしましょう!

