AMG Solution

【Java Stream API 超入門】filterメソッドでの絞り込みとmapメソッドによる要素の変換

feels

こんにちは。大城です。
 
今回は、Java SE 8で追加されたStream APIについて、初心者向けに解説していきます。
 
今回は、絞り込みや要素の変換などを行う中間処理filtermapについて詳しく紹介していきたいと思います。

環境

OS
Windows10
Java
Java8

絞り込み(filter)

まずは要素の絞り込みを行うfilterメソッドについて説明します。
 
filterは、条件に合致した要素のみからなる新しいStreamを返却します。

実行結果

今回もラムダ式を用いています。
 
->の左のpはPerson型の要素を受け取る引数となっており、右側にBooleanを返す処理を記述します。これによって、返り値がtrueなるpのみが残ったStreamが取得できます。
 
今回の例では、p.getAge() >= 20となるp、つまり年齢が20歳以上の人が抽出され、Streamが作られています。
 
このように、filterメソッドでは、条件による抽出という動作を1行のみでわかりやすく記述することができます。

要素の変換(map)

続いてmapメソッドについて説明します。まずは例をご覧ください。

実行結果

mapメソッドでは、元の型の処理を受け取って返り値を返す処理を記述することで、その型のStreamが取得できます。
 
例ではPersonのStreamからStringのStreamに変換し、名前だけを抽出しています。p.getName()の部分を他の値を返す処理に変えれば別のStreamを取得することもできます。

まとめ

いかがでしたか。
 
filterメソッドは、条件による要素の抽出を1行で記載でき、mapメソッドは要素の変換を1行で記載できます。いずれも、処理後にどんなStreamが取得できるのかがわかりやすくなっています。
 
次回以降では、このほかの中間処理メソッドについても解説していこうと思います。
 
それでは、また。
 
 
 
 
《関連記事》

feels recruit

OSHIRO'S BLOG

大城の記事

大城の記事の最新情報をお届けいたします。

SAME CATEGORY BLOG

この記事と同様のカテゴリー記事

feelsでSFA・CRM
はじめました。
LOADING