在 Java 中將 Iterable 轉換為流


且假設以下程式碼是我們可迭代的 −

Iterable<String> i = Arrays.asList("K", "L", "M", "N", "O", "P");

現在,建立集合 −

Stream<String> s = convertIterable(i);

上述程式碼中,我們有一個用於轉換的自定義方法 convertIterable() 。以下為該方法 −

public static <T> Stream<T> convertIterable(Iterable<T> iterable) {
   return StreamSupport.stream(iterable.spliterator(), false);
}

範例

以下是將一個可迭代物件轉換為 Java 流的程式 −

 線上演示

import java.util.*;
import java.util.stream.*;
public class Demo {
   public static <T> Stream<T> convertIterable(Iterable<T> iterable) {
      return StreamSupport.stream(iterable.spliterator(), false);
   }
   public static void main(String[] args) {
      Iterable<String> i = Arrays.asList("K", "L", "M", "N", "O", "P");
      Stream<String> s = convertIterable(i);
      System.out.println("Iterable to Stream: "+s.collect(Collectors.toList()));
   }
}

輸出

Iterable to Stream: [K, L, M, N, O, P]

更新日期:26-Sep-2019

205 次瀏覽

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告