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

JavaのforEachメソッドについて紹介|forEachメソッドの使用方法を理解しよう

2020年10月12日

SE
forEachメソッドとはなんでしょうか?

PM
はい。forEachメソッドとは繰り返し実行をしてくれる機能のことです。実際のコードを見ながら理解を深めていきましょう。

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


JavaのforEachメソッドの使用方法をご存知でしょうか?
forEachメソッドは、Java8で追加されたメソッドで、Listや配列およびMap等に使用できます。

Java7以前は以下のように3行で記述する必要がありました。

forEachメソッドを使用すれば、1行で記述できます。
JavaのforEachメソッドに興味のある方はぜひご覧ください。

Listで使う方法

JavaでListに対してforEachメソッドを使用する方法を紹介します。

実際のソースコードを見てみましょう。

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

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

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

配列で使う方法

Javaで配列に対してforEachメソッドを使用する方法を紹介します。

実際のソースコードを見てみましょう。

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

配列に対してforEachメソッドを使用するには、””Stream”を使う必要があります。

Mapで使う方法

JavaでMapに対してforEachメソッドを使用する方法を紹介します。

実際のソースコードを見てみましょう。

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

このように、Mapに対してforEachメソッドが使えます。

continue

JavaのforEachメソッドでは、continue文を記述できません。
以下のように記述するとコンパイルエラーとなります。

returnを利用すれば、continue相当になります。
実際のソースコードを見てみましょう。

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

item2がスキップされていることが分かります。
JavaのforEachメソッドでは、continue文を記述できないので、returnを利用します。

break

JavaのforEachメソッドでは、break文を記述できません。
以下のように記述するとコンパイルエラーとなります。

残念ながら、continueのような代替用法はbreakにはありません。
ループの途中でbreakしたい場合は、forEachメソッドは使用しないようにしましょう。

SE
なるほど。forEachメソッドを使えばとてもシンプルなコードが書けますね。

PM
併用できないメソッドもありますが、まずはご自身でコードを書いて覚えていきましょう。

JavaのforEachメソッドを使ってみよう

いかがでしたでしょうか。
JavaのforEachメソッドの使用方法について説明しました。
forEachメソッドは、Java8で追加されたメソッドで、Listや配列およびMap等に使用できます。
forEachメソッドを使用すれば、ソースコードをシンプルにすることが可能です。

また、forEachメソッドではcontinueやbreakは使用できません。
continueしたい場合は、returnを使用してください。
breakしたい場合は、forEachメソッド以外のメソッドを使用するようにしてください。

ぜひご自身でソースコードを書いて、理解を深めてください。


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

求人一覧

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

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