在Java 流中使用Max 函數傳回所有最大值
在Java 8 的lambda 流中使用max 函數時,在場景中可能會出現差異其中多個物件產生相同的最大值。此函數輸出任意代表,而不評估或考慮所有可行的候選者。
為了解決此限制,需要一種替代方法來準確檢索所有最大值。不幸的是,沒有一種簡單的方法,需要利用集合來保存部分結果。
兩遍解決方案
對於儲存在集合中的輸入(List list),可以採用兩階段過程:
單通道解(流)
要使用流解決單通道場景,可以根據提供的比較器建立自訂收集器:
要在流中使用此收集器,只需呼叫收集:
以上是如何使用'max”函數從 Java 流返回所有最大值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!