StreamEx ライブラリは、Java 8 ストリームを簡潔に記述するのに本当に役立つようです。特に、マップを検討する場合 (mapKeyValue
たとえば、マップ エントリを手動でアンボックスする代わりに を使用します)。
マップにエントリのストリームがある場合、バニラ Java 8 では次のように値を合計できます。
someMap.entrySet().stream()
.mapToDouble(Entry::getValue)
.sum()
StreamExでもこれを行うことができますが、StreamExでそれを行うより良い方法を期待していましたが、私が思いつく最善の方法は次のとおりです。
EntryStream.of(someMap)
.values()
.mapToDouble(d -> d)
.sum();
これは良くありません。
私が行方不明になっているより良い方法はありますか?