1. ホーム
  2. java

ストリームの最後の要素を取得する最も効率的な方法

2023-08-17 02:23:13

質問

ストリームには last() メソッドを持っていません。

Stream<T> stream;
T last = stream.last(); // No such method

最後の要素(または空のStreamの場合はNULL)を取得するための最もエレガントかつ/または効率的な方法は何でしょうか?

どのように解決するのですか?

単純に現在値を返すリダクションを行う。

Stream<T> stream;
T last = stream.reduce((a, b) -> b).orElse(null);