Java 中的 Stream.concat()


Java 中 Stream 類的 concat() 方法建立一個延遲連線流,其中元素包含第一個流的所有元素,後跟第二個流中的所有元素。語法如下 −

concat(Stream<? extends T> a, Stream<? extends T> b)

其中,a 是第一個流,而 b 是第二個流。T 是流元素的型別。

示例

以下是一個實現 Stream 類的 concat() 方法的示例 −

import java.util.*;
import java.util.stream.IntStream;
import java.util.stream.Stream;
public class Demo {
   public static void main(String[] args) {
      Stream<String> streamOne = Stream.of("John");
      Stream<String> streamTwo = Stream.of("Tom");
      Stream.concat(streamOne, streamTwo).forEach(val -> System.out.println(val));
   }
}

輸出

John
Tom

示例

我們現在看另一個示例,其中我們在多個流上進行操作 −

import java.util.stream.Collectors;
import java.util.stream.Stream;
import static java.util.stream.Stream.*;
public class Main {
   public static void main(String[] args) {
      Stream<Integer> streamOne = Stream.of(15, 40, 50);
      Stream<Integer> streamTwo = Stream.of(55, 70, 90);
      Stream<Integer> streamThree = Stream.of(110, 130, 150);
      Stream<Integer> streamFour = Stream.of(170, 200, 240, 300);
      Stream<Integer> res = Stream.concat(streamOne, concat(streamTwo, concat(streamThree, streamFour)));
      System.out.println( res.collect(Collectors.toList()) );
   }
}

輸出

[15, 40, 50, 55, 70, 90, 110, 130, 150, 170, 200, 240, 300]

更新於: 25-9-2019

193 次瀏覽

開啟你的 職業生涯

完成課程並獲得認證

立即開始
廣告
© . All rights reserved.