Java IntStream concat()
IntStream concat() 方法创建一个连接的流,其中的元素是第一个流的所有元素,然后是第二个流的所有元素。如果两个输入流都是有序的,那么生成的流就是有序的,如果其中一个输入流是平行的,那么生成的流就是平行的。
语法:
static IntStream concat(IntStream a, IntStream b)
其中,IntStream是一个原始int值元素的序列。
a代表第一个流。
b代表第二个流,并且
该函数返回
两个输入IntStreams的连接。
对IntStream.concat(IntStream a, IntStream b)的调用可以看作是形成一棵二进制树。所有输入流的串联在根部。各个输入流在叶子上。下面给出的是3个IntStream a, b和c的例子。

每一个额外的输入流都会给树增加一层深度,也会增加一层间接性以达到所有其他的流。
注意: IntStream.concat()方法返回的元素是有序的。例如,下面两行返回相同的结果。
IntStream.concat(IntStream.concat(stream1, stream2), stream3);IntStream.concat(stream1, IntStream.concat(stream2, stream3));
但下面两个人的结果是不同的。
IntStream.concat(IntStream.concat(stream1, stream2), stream3); IntStream.concat(IntStream.concat(stream2, stream1), stream3);
例1 :
// Implementation of IntStream.concat()// method in Java 8 with 2 IntStreamsimport java.util.*;import java.util.stream.IntStream;import java.util.stream.Stream; class GFG { // Driver code public static void main(String[] args) { // Creating two IntStreams IntStream stream1 = IntStream.of(2, 4, 6); IntStream stream2 = IntStream.of(1, 3, 5); // concatenating both the Streams // with IntStream.concat() function // and displaying the result IntStream.concat(stream1, stream2) .forEach(element -> System.out.println(element)); }}
输出。
246135
例2 :
// Implementation of IntStream.concat()// method in Java 8 with 2 IntStreamsimport java.util.*;import java.util.stream.IntStream;import java.util.stream.Stream; class GFG { // Driver code public static void main(String[] args) { // Creating two IntStreams IntStream stream1 = IntStream.of(2, 4, 6); IntStream stream2 = IntStream.of(1, 2, 4); // concatenating both the Streams // with IntStream.concat() function // and displaying distinct elements // in the concatenated IntStream IntStream.concat(stream1, stream2).distinct(). forEach(element -> System.out.println(element)); }}输出。
2461
