Javaコラム Javaエンジニアのためのお役立ちコラム

Java

JavaのforEachメソッドの使い方|コード付きでわかりやすく解説

2020年12月23日
SE
JavaのforEachメソッドはどのようなときに使用するのでしょうか。
PM
配列やListおよびMap等の各要素を処理したいときに使用します。

JavaのforEachメソッドの使い方とは?


今回は、JavaのforEachメソッドの使い方について説明します。forEachメソッドは、配列やListおよびMap等の各要素を処理できます。

Java7より前は、以下のように記述していました。

forEachメソッドは、これを1行で記述することができます。JavaのforEachメソッドについて、ソースコードを交えて紹介します。

Listで使う方法

JavaのforEachメソッドをListに対して使ってみましょう。ソースコードを以下に記載します。

実行結果は以下のようになります。

1行で記述でき、直感的で分かりやすいですね。また、メソッド参照することで、ラムダ式を省略して記述できます。

このように記述しても同じ結果となります。

配列で使う方法

JavaのforEachメソッドを配列に対して使用してみましょう。ソースコードを以下に記載します。

実行結果は以下のようになります。

forEachメソッドで配列の各要素を処理するには、””Stream”を使用します。

Mapで使う方法

JavaのforEachメソッドをMapに対して使用してみましょう。ソースコードを以下に記載します。

実行結果は以下のようになります。

このように、forEachメソッドでMapの各要素を処理できます。

continue

JavaのforEachメソッド内では、ループ処理をスキップするcontinueを記述できません。continueを記述すると、コンパイルエラーになります。

return句を使用することで、continueの挙動を実現できます。return句を使用したソースコードを以下に記載します。

実行結果は以下のようになります。

item2が出力されず、continueされていることが分かります。

JavaのforEachメソッドでは、ループ処理をスキップするcontinueを記述できません。そのため、returnを使用します。

break

JavaのforEachメソッド内では、ループ処理を中断するbreakを記述できません。breakを記述すると、コンパイルエラーになります。

continueはreturnで代用できましたが、breakの代用手段はありません。ループの途中でbreakする処理を記述する場合は、forEachメソッドではなくfor文を使用してください。

SE
JavaのforEachメソッドの使い方や使用のルールがよく理解できました。
PM
forEachメソッドで指定できないコードについても理解しておきましょう。

まとめ

今回は、JavaのforEachメソッドを紹介しました。forEachメソッドは、Listや配列およびMap等の要素の繰り返し処理に使用できます。

forEachメソッドでは、ループ処理をスキップするcontinueや、中断するbreakは記述できません。continueはreturnで代用できます。breakは代用手段がありませんのでforEachメソッドではなくfor文を使用してください。


Javaでのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)

Search

Popular

recommended

Categories

Tags