拡張for文

目次
  • 解説
  • 1. 拡張for文
問題に挑戦!
進捗を変更する




解説

1. 拡張for文


ここまで、配列の中身を順番に出力する(列挙する)処理を例として、while文for文の使い方を見てきましたが、どちらも添字を使って配列の各要素を取得していました。

そもそも配列の各要素を順番に取得して、その要素ごとに、要素の数だけブロック内を実行するためのループ構文を作ってしまおう、これが拡張for文です。

    static void practiceForEach() {
        int[] sellCounter = new int[] { 10, 20, 30 };

        for (int counter : sellCounter) {
            Logger.out(counter);
        }
    }

キーワード「for」に続く丸括弧の中はコロン「:」で2つに区切られています。仮に

for ( A : B ) { ~ }

とした場合、

  • Aで、配列から取り出した各要素を入れる変数を宣言する
  • Bに、配列を置く

のように非常にシンプルな構造です。Bの配列から要素をひとつずつ取り出してAに代入し、ブロック内を実行します。

配列と同時にその添字も役に立つ場合(例えばランキング表示処理で、添字に+1した数字を順位として表示するなどの場合)以外には、この拡張for文を使用するようにしましょう。

問題

確認問題


確認問題1

次のコードの中で、拡張for文の使い方が正しいものはどれか。