カテゴリ: Javaの配列 更新日: 2026/04/04

Java の配列をループで操作する「for 文」と「拡張 for 文」

096
Java の配列をループで操作する「for 文」と「拡張 for 文」

新人と先輩の会話形式で理解しよう

新人

「Java で配列の中の値を順番に処理するにはどうしたらいいですか?」

先輩

「配列の要素を順番に処理するには for 文や 拡張 for 文 を使うのが一般的だよ。」

新人

「for 文と拡張 for 文ってどう違うんですか?」

先輩

「それぞれの特徴や使い方を具体的な例を交えて説明していこう!」

1. 配列をループで操作するとは?(基本的な説明)

1. 配列をループで操作するとは?(基本的な説明)
1. 配列をループで操作するとは?(基本的な説明)

Java の配列には複数のデータを格納できますが、全てのデータを一度に処理する場合、ループを使うのが便利です。

例えば、配列のすべての値を順番に表示したい場合、手動で System.out.println() を書くのは大変ですが、ループを使えば簡単に処理できます。

2. for 文の基本的な書き方

2. for 文の基本的な書き方
2. for 文の基本的な書き方

Java の for 文は、配列の要素を順番に処理するのに適しています。基本的な構文は以下のようになります。

for 文の基本構文


public class ForLoopExample {
    public static void main(String[] args) {
        int[] numbers = {10, 20, 30, 40, 50};

        for (int i = 0; i < numbers.length; i++) {
            System.out.println("インデックス " + i + " の値: " + numbers[i]);
        }
    }
}

インデックス 0 の値: 10
インデックス 1 の値: 20
インデックス 2 の値: 30
インデックス 3 の値: 40
インデックス 4 の値: 50

このように、for 文を使えば、配列のすべての要素を順番に取得できます。

3. for 文を使って配列のすべての要素を表示する方法

3. for 文を使って配列のすべての要素を表示する方法
3. for 文を使って配列のすべての要素を表示する方法

Java の for 文を使うことで、配列のすべての要素を一つずつ取得し、表示することができます。

for 文を使った配列の要素表示


public class ForLoopExample {
    public static void main(String[] args) {
        String[] fruits = {"りんご", "みかん", "ぶどう", "バナナ"};

        for (int i = 0; i < fruits.length; i++) {
            System.out.println("果物 " + (i + 1) + " : " + fruits[i]);
        }
    }
}

果物 1 : りんご
果物 2 : みかん
果物 3 : ぶどう
果物 4 : バナナ

for 文では、ループの回数を 配列の長さ に設定することで、すべての要素を順番に表示できます。

Javaをこれから始める人や、 オブジェクト指向の考え方を基礎から理解したい人には、 定番の入門書がこちらです。

スッキリわかるJava入門 第4版をAmazonで見る

※ Amazon広告リンク

4. 拡張 for 文の基本的な書き方

4. 拡張 for 文の基本的な書き方
4. 拡張 for 文の基本的な書き方

Java には 拡張 for 文(for-each) という構文があり、配列の要素を簡単に順番に処理できます。

拡張 for 文の基本構文


public class EnhancedForExample {
    public static void main(String[] args) {
        int[] numbers = {10, 20, 30, 40, 50};

        for (int num : numbers) {
            System.out.println("値: " + num);
        }
    }
}

値: 10
値: 20
値: 30
値: 40
値: 50

拡張 for 文を使うと、配列のすべての要素を 変数 に一つずつ代入しながらループ処理を行います。

5. for 文と拡張 for 文の違い

5. for 文と拡張 for 文の違い
5. for 文と拡張 for 文の違い

通常の for 文と拡張 for 文には、それぞれ異なる特徴があります。

for 文のメリットとデメリット

  • インデックス(i)を使って要素を取得できる。
  • 配列の特定の位置を直接操作できる。
  • しかし、length を明示的に指定しなければならないため、コードが少し長くなる。

拡張 for 文のメリットとデメリット

  • インデックスを意識せずに、配列のすべての要素を簡単に処理できる。
  • ループの条件を書かなくて済むので、可読性が高い。
  • しかし、配列の要素を変更する必要がある場合には向かない。

for 文と拡張 for 文の使い分け

要素を変更する場合やインデックスが必要な場合は for 文を、単純にすべての要素を処理する場合は 拡張 for 文 を使うと便利です。

6. for 文と拡張 for 文を使い分けるポイント

6. for 文と拡張 for 文を使い分けるポイント
6. for 文と拡張 for 文を使い分けるポイント

for 文と拡張 for 文は、どちらも配列の要素をループ処理するための方法ですが、それぞれ得意な使い方があります。

for 文を使うべき場面

  • 配列のインデックス(位置)を使いたい場合
  • 特定の要素だけを変更したい場合
  • 配列の一部の要素だけを処理したい場合(例: 途中で処理を止める)

拡張 for 文を使うべき場面

  • 配列の全要素を処理する場合
  • インデックスを使わず、シンプルに記述したい場合
  • 配列の要素を変更する必要がない場合

使い分けの例


public class ForLoopComparison {
    public static void main(String[] args) {
        String[] colors = {"赤", "青", "緑", "黄色"};

        // for 文で特定の要素を変更
        for (int i = 0; i < colors.length; i++) {
            if (colors[i].equals("青")) {
                colors[i] = "水色"; // 青を水色に変更
            }
            System.out.println(colors[i]);
        }

        // 拡張 for 文で全要素を表示
        for (String color : colors) {
            System.out.println("色: " + color);
        }
    }
}

赤
水色
緑
黄色
色: 赤
色: 水色
色: 緑
色: 黄色

上記のように、for 文は特定の要素を変更するのに適しており、拡張 for 文はシンプルな処理に向いています。

7. 配列の中から特定の値を検索する方法(for 文を活用)

7. 配列の中から特定の値を検索する方法(for 文を活用)
7. 配列の中から特定の値を検索する方法(for 文を活用)

for 文を使えば、配列の中から特定の値を探すことができます。例えば、ある文字列が配列に含まれているかどうかを調べることが可能です。

for 文を使った配列の検索


public class ArraySearch {
    public static void main(String[] args) {
        String[] fruits = {"りんご", "みかん", "ぶどう", "バナナ"};
        String target = "ぶどう";
        boolean found = false;

        for (int i = 0; i < fruits.length; i++) {
            if (fruits[i].equals(target)) {
                found = true;
                System.out.println(target + " が見つかりました(インデックス " + i + ")");
                break;
            }
        }

        if (!found) {
            System.out.println(target + " は見つかりませんでした");
        }
    }
}

ぶどう が見つかりました(インデックス 2)

for 文を使って配列を検索し、見つかったら break を使って処理を中断することで、無駄なループを省略できます。

8. 練習問題:「for 文」と「拡張 for 文」を使った配列操作

8. 練習問題:「for 文」と「拡張 for 文」を使った配列操作
8. 練習問題:「for 文」と「拡張 for 文」を使った配列操作

ここまでの学習を活かして、以下の練習問題に挑戦してみましょう。

練習問題 1:for 文を使って配列の合計を求める

以下の配列の合計値を求めるプログラムを書いてみましょう。


public class ArraySum {
    public static void main(String[] args) {
        int[] numbers = {5, 10, 15, 20, 25};
        int sum = 0;

        for (int i = 0; i < numbers.length; i++) {
            sum += numbers[i];
        }

        System.out.println("合計: " + sum);
    }
}

合計: 75

練習問題 2:拡張 for 文を使って配列の最大値を求める

次に、拡張 for 文を使って配列の最大値を求めるプログラムを作成してみましょう。


public class ArrayMax {
    public static void main(String[] args) {
        int[] numbers = {18, 42, 3, 97, 56};
        int max = numbers[0];

        for (int num : numbers) {
            if (num > max) {
                max = num;
            }
        }

        System.out.println("最大値: " + max);
    }
}

最大値: 97

このように、拡張 for 文はインデックスを意識せずに値を順番に取得できるため、最大値を求めるような処理に適しています。

この記事を読んだ人からの質問

この記事を読んだ人からの質問
この記事を読んだ人からの質問

プログラミング初心者からのよくある疑問/質問を解決します

Javaの配列をループ処理で操作するメリットは何ですか?

Javaの配列には複数のデータをまとめて格納できますが、それらのデータを一つずつ手動で表示したり計算したりするのは非常に手間がかかります。ループ処理(繰り返し処理)を活用することで、配列内のすべての要素に対して同じ操作を自動的に実行できるようになります。例えば、100個のデータが入った配列の中身をすべて画面に表示したい場合、ループを使えばわずか数行のプログラムコードで記述が完了するため、開発効率が劇的に向上し、書き間違いなどのミスも防ぐことができます。
Javaの配列の一覧へ
新着記事
Flutter
Flutterでのリポジトリパターンの実装例
Flutterでリポジトリパターンを実装する方法を完全解説!初心者向けアーキテクチャ設計入門
Java
Java の Objects クラスを使って null チェックを簡単にする方法
JavaのObjectsクラスの使い方を完全ガイド!nullチェックを簡単・安全に行う方法
Java
Java の UUID クラスを使って一意の識別子を作成する方法
JavaのUUIDクラスの使い方を完全ガイド!初心者でもわかる一意な識別子の作成方法
Java
Java の古い日付クラス(Date, Calendar)と新しい日付 API の違い
JavaのDateとCalendarと新しい日付APIの違いとは?初心者向け完全ガイド
人気記事
Java
Java の Random クラスを使ってランダムな数値を生成する方法
JavaのRandomクラスの使い方を完全ガイド!初心者でもわかる乱数生成
Java
Java の getter メソッドと setter メソッドの使い方
Javaのgetterメソッドとsetterメソッドの使い方を完全ガイド!初心者でもわかるアクセス方法
AWS
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
【AWS】RDSの料金体系まとめ!ざっくり理解・高いと感じる理由も解説
AWS
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説
【AWS】VPCとは?初心者向けに仕組み・用途・できることをわかりやすく解説

🔌 USBポート不足を解消

Type-C 1本で拡張。
開発・作業環境を一気に快適に

UGREEN USB-Cハブを見る

※ Amazon広告リンク