【发布时间】:2020-01-27 13:28:32
【问题描述】:
我需要创建一个新的内部列表并使用它来设置外部列表。如何使用 flatMap。 fooList 是 FooDb 对象的列表,我从中创建 Foo 对象的列表。
final ArrayList<FooDb> fooList= getFooFromDB();
final ArrayList<Foo> foos = new ArrayList<>();
fooList.forEach(foo -> {
final ArrayList<Bar> bars = new ArrayList<>();
item.getItems()
.forEach(item -> bars.add(new Bar(foo.getId(), foo.getName())));
foos.add(new Foo(0L, foo.getId(), bars));
});
【问题讨论】:
-
你的意思是,你有 Foo 类,它有 Bar 类的列表?因为在您的示例中不清楚 itemsList (foos?) 的含义。您能否提供这些类的结构?
-
什么是
itemsList?还有什么item.getItems()?共享的代码不会编译item作为不同上下文中的变量。 -
实现什么?请编辑您的标题以使其完整,并总结您的具体技术问题。
标签: java java-8 java-stream flatmap