問題:
如何使用Java 8Stream 作業而不將其轉換為List?
解決方案:
tl;dr: 使用 StreamSupport.stream(iterable.spliterator(), false) 從 iterable 建立流。
詳細說明:
Iterable 提供了 spliterator() 方法,該方法傳回 Spliterator,可用於建立使用 StreamSupport.stream 進行串流傳輸。以下是程式碼片段:
這種方法避免了不必要的列表轉換,這可以提高效能和記憶體消耗。 StreamSupport.stream 有兩個參數:
然後可以使用 Stream API 操作(如過濾器、映射等)來操作產生的流。
好處:
使用StreamSupport.stream 提供有以下好處:
以上是如何在不使用清單的情況下將 Iterable 轉換為 Java 8 流?的詳細內容。更多資訊請關注PHP中文網其他相關文章!