【发布时间】:2015-11-06 00:14:20
【问题描述】:
使用 Java 8 lambda 表达式,我正在尝试做这样的事情。
List<NewObject> objs = ...;
for (OldObject oldObj : oldObjects) {
NewObject obj = oldObj.toNewObject();
obj.setOrange(true);
objs.add(obj);
}
我写了这段代码。
oldObjects.stream()
.map(old -> old.toNewObject())
.forEach({new.setOrange("true")})
.collect(Collectors.toList());
这是无效代码,因为我随后尝试对 .forEach() 返回的内容执行 .collect(),但 forEach 无效且不返回列表。
这应该如何构建?
【问题讨论】:
标签: java lambda java-8 java-stream