Java 中的 Stream.concat()
java 8object oriented programmingprogramming更新于 2025/12/8 22:36:17
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]

