1
誰でも簡単にJava 8タイプの別個の関数を記述して、ユーザーのクリックのリストをストリームし、別の(URLに基づいて)作成し、後のタイムスタンプ?Java 8.オブジェクトのリスト。ルールに基づいてプロパティに基づいて別名を保持したい
action=click, url=www.google.com, timestamp=10
action=click, url=www.google.com, timestamp=20
action=click, url=www.abc.com/123, timestamp=10
action=click, url=www.grassisgreener.com, timestamp=10
action=click, url=www.grassisgreener.com, timestamp=46
最終的な結果は
action=click, url=www.google.com, timestamp=20
action=click, url=www.abc.com/123, timestamp=10
action=click, url=www.grassisgreener.com, timestamp=46
マージ関数は 'BinaryOperator.maxBy(Comparator.comparingLong(X :: getTimestamp))'と同等です。 'X'はアイテムの型で、' import static'でより簡潔になります... – Holger
代替グループが空ではないことが分かっているにもかかわらず、 'maxBy'が明らかに' Optional'を生成してしまう 'groupingBy(X :: getUrl、collectingAndThen(maxBy(comparisonLong(X :: getTimestamp))、Optional :: get))) ... – Holger
Holgerに感謝します。それらも働く。 –