简单地说:
public class Task{
private String name;
private List<Task> subtasks;
}
以及Task
个对象的列表。如何使用Task
将每个subtask
的列表作为stream()
获取。
我试过这个:
List<Task> subtasks = myTask.stream().map(x -> x.getSubtasks()).collect(Collectors.toList());
但它会返回List<List<Task>>
。将数组从map()
连接到现有结果的最佳方法是什么?
答案 0 :(得分:2)
List<Task> subtasks = myTask.stream()
.flatMap(x -> x.getSubtasks().stream())
.collect(Collectors.toList());