【Java-23】配列②for文との組み合わせ

初心者向けJava講座

※本サイトで紹介している商品・サービス等の外部リンクには、アフィリエイト広告が含まれる場合があります。

こんぶ
こんぶ

こんにちは。こんぶです。

今日は、「配列とfor文の組み合わせ」について学んでいきましょう!

私の自己紹介等は、こちらからどうぞ。

また、Javaの学習を最初から進めていきたい方は、Java-1から見てみてくださいね。

配列とfor文

配列とfor文を組み合わせて使用することで、便利に活用することができる方法があるので、3つ紹介していきます。

添え字にループ変数を使用することで、ループするたびに添え字が0~順番に変化しながら処理を行ってくれるため、配列の全要素を利用できます。

こうすると、要素の個数が増減したとしてもfor文の記述を修正する必要はなく、配列の宣言・初期化部分のみ変更することになるので便利です。

ループ配列の要素を順に利用していくことを「配列を回す」ともいいます。

forループで配列を回すコードは、次のようになります。

ループ変数名は i 以外でも大丈夫です。

「配列変数名.length」で要素数を取得できるので、「要素数より小さい時」という条件を設定すると、全要素を利用することができますね。

例えば、int型の要素を5つ持つ配列変数「numbers」を宣言・初期化し、配列を回しながら、各ループごとに画面に出力するというコードは次のようになります。

こちらの例では、各ループごとに「numbers[その時点で i に入っている添え字] = 配列変数numbersのi番目の要素」を出力するので、画面には次のように表示されます。

条件に合致する要素をカウントして集計することもできます。

forループで配列を回し、条件に合致する要素をカウントしていくコードは、次のようになります。

こちらも、ループ変数名は i 以外でも大丈夫です。

「配列変数名.length」で要素数を使用して全要素をループさせ、要素が「集計条件」に合致する場合にint型変数「count」にインクリメント(1足す)することで集計されていきます。

例えば、int型配列「numbers」とint型変数「count」を宣言・初期化し、「numbers」の要素が20以上の場合に「count」にインクリメント(1足す)し、最後に結果(20以上の要素の数)を画面に出力するというコードは次のようになります。(集計条件:「numbers」の要素が20以上)

int型配列「numbers」には20以上の数字が5つ入っているため、この例を実行すると「20以上の要素の数: 5」のように画面に表示されます。

同じ添え字を使って、2つの異なる配列の情報を関連付けて利用することもできます。

対応するデータを簡単に取得できるので便利です。

次の例を見てみましょう。

こちらは、商品名を格納するString型の配列「products」と、各商品に対応する価格を格納するint型の配列「prices」を宣言・初期化し、forループで商品名と対応する価格を順番に出力していくというコードになっています。

「products」と「prices」の添え字(今回は「i」)を対応させることで、関連付けて利用することができます。

ちなみに、この例を実行すると次のように画面に表示されます。

今回のまとめ

配列for文を組み合わせて使用することで、次の3つのことができます。

  • 添え字にループ変数を使用することで、配列の全要素を利用すること
  • 条件に合致する要素をカウントして集計すること
  • 同じ添え字を使用し、2つの異なる配列の情報を関連付けて利用すること

配列を回す:ループ配列の要素を順に利用していくこと

次回は、配列の第3弾として「拡張for文」や「メモリ」について説明していこうと思います。

今回の内容のチャレンジ問題はこちらです→チャレンジ問題【Java-23】

次の内容に進む方はこちらです→【Java-24】配列③拡張for文、メモリ

それでは、こんぶはじゃ~

コメント

タイトルとURLをコピーしました