concat()
Java中Stream类的方法创建一个延迟串联的流,其元素是第一个流的所有元素,然后是第二个流的所有元素。语法如下-
concat(Stream<? extends T> a, Stream<? extends T> b)
这里,a是第一流,而b是第二流。T是流元素的类型。
以下是实现concat()
Stream类的方法的示例-
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]