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 次浏览

开启你的 职业生涯

完成课程并获得认证

立即开始
广告