以前参画した現場で保守期間中に1.7→1.8に変更することになった際、
強引にでも、1.8のStreamを利用するような方がいらしたので試してみました。
※すでにお試ししたかたも多いと思います。
〇記述量
見たことあるかたはすぐにわかると思いますが、1.8のほうが断然少ないです。
〇パフォーマンス
一番わかりやすいと思われるループとstream Apiで調査してみます。
・for文で条件にあてはまる場合にListに要素追加してリストを作成
・filter.collectを利用して上記と同様のリストを作成
<測定結果>
処理するListの件 | 拡張for文 (ms) | StreamAPI (ms)
100万件 | 8 | 10
1,000万件 | 91 | 115
正直、体感できるほどの差はありませんが、結果からは無理にStreamを使わなくても・・・
可読性と、保守状況などでどう実装するか検討するのがよさそうです。