Java8 Stream详解~Stream 创建
生活随笔
收集整理的這篇文章主要介紹了
Java8 Stream详解~Stream 创建
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
Stream可以通過集合數組創建。
1、通過 java.util.Collection.stream() 方法用集合創建流
List<String> list = Arrays.asList("a", "b", "c"); // 創建一個順序流 Stream<String> stream = list.stream(); // 創建一個并行流 Stream<String> parallelStream = list.parallelStream();2、使用java.util.Arrays.stream(T[] array)方法用數組創建流
int[] array={1,3,5,6,8}; IntStream stream = Arrays.stream(array);3、使用Stream的靜態方法:of()、iterate()、generate()
Stream<Integer> stream = Stream.of(1, 2, 3, 4, 5, 6);Stream<Integer> stream2 = Stream.iterate(0, (x) -> x + 3).limit(4); stream2.forEach(System.out::println);Stream<Double> stream3 = Stream.generate(Math::random).limit(3); stream3.forEach(System.out::println);輸出結果:
0 3 6 9 0.6796156909271994 0.1914314208854283 0.8116932592396652「stream和parallelStream的簡單區分:」?stream是順序流,由主線程按順序對流執行操作,而parallelStream是并行流,內部以多線程并行執行的方式對流進行操作,但前提是流中的數據處理沒有順序要求。例如篩選集合中的奇數,兩者的處理不同之處:
?
如果流中的數據量足夠大,并行流可以加快處速度。
除了直接創建并行流,還可以通過parallel()把順序流轉換成并行流:?
Optional<Integer> findFirst = list.stream().parallel().filter(x->x>6).findFirst();總結
以上是生活随笔為你收集整理的Java8 Stream详解~Stream 创建的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 执行 shell命令 的几
- 下一篇: Java8 Stream详解~遍历/匹配