使用Java流创建数组中所有列表的列表
我有一个使用Java流创建数组中所有列表的列表,java,arraylist,collections,java-stream,Java,Arraylist,Collections,Java Stream,我有一个节点数组,所有节点都有一个变量列表: Node[] arguments; // argument[i].vars() returns List<Variable> 在调用collect之前,用于将流转换为流: List<Variable> vars = Arrays.asList(arguments).stream() .map(Node::vars)
节点数组
,所有节点都有一个变量列表
:
Node[] arguments; // argument[i].vars() returns List<Variable>
在调用collect
之前,用于将流
转换为流
:
List<Variable> vars = Arrays.asList(arguments).stream()
.map(Node::vars)
.flatMap(List::stream)
.collect(Collectors.toList());
List vars=Arrays.asList(arguments).stream()
.map(节点::vars)
.flatMap(列表::流)
.collect(Collectors.toList());
您还可以使用Stream.of(arguments)
而不是Arrays.asList(arguments.Stream()
List<List<Variable>> vars = Arrays.asList(arguments).stream()
.map(Node::vars)
.collect(Collectors.toList());
List<Variable> vars = Arrays.asList(arguments).stream()
.map(Node::vars)
.flatMap(List::stream)
.collect(Collectors.toList());