Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/318.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';在Java中,将多个集合组合成一个流的最简单方法是什么?_Java_Collections_Java 8_Java Stream - Fatal编程技术网

什么';在Java中,将多个集合组合成一个流的最简单方法是什么?

什么';在Java中,将多个集合组合成一个流的最简单方法是什么?,java,collections,java-8,java-stream,Java,Collections,Java 8,Java Stream,假设我有多个要作为单个流处理的集合。最简单的方法是什么?是否有一个实用程序类可以为我做这件事,或者我必须自己滚动一些东西 如果我的问题不清楚,这基本上就是我想做的: Collection<Region> usaRegions; Collection<Region> canadaRegions; Collection<Region> mexicoRegions; Stream<Region> northAmericanRegions = collec

假设我有多个要作为单个流处理的集合。最简单的方法是什么?是否有一个实用程序类可以为我做这件事,或者我必须自己滚动一些东西

如果我的问题不清楚,这基本上就是我想做的:

Collection<Region> usaRegions;
Collection<Region> canadaRegions;
Collection<Region> mexicoRegions;
Stream<Region> northAmericanRegions = collect(usaRegions, canadaRegions, mexicoRegions);

public Stream<T> collect(T...) {
     /* What goes here? */
}
收集区域;
收集加拿大地区;
墨西哥地区收藏;
Stream northAmericanRegions=收集(美国地区、加拿大地区、墨西哥地区);
公共流收集(T…){
/*这里有什么*/
}

或者,您可以使用flatMap:

Stream<Region> = 
    Stream.of(usaRegions, canadaRegions, mexicoRegions)
          .flatMap(Collection::stream);
流=
河流(美国地区、加拿大地区、墨西哥地区)
.flatMap(集合::流);

Yea its
java.util.stream.stream.concat
。看到了吗?我没有意识到存在着
concat
!谢谢