我有 SourceObjects 列表,我需要将其转换为 ResultObjects 列表。
我可以使用 ResultObject 的方法将一个对象获取到另一个对象:
convertFromSource(srcObj);
当然我可以这样做:
public void onNext(List<SourceObject> srcObjects) {
List<ResultsObject> resObjects = new ArrayList<>();
for (SourceObject srcObj : srcObjects) {
resObjects.add(new ResultsObject().convertFromSource(srcObj));
}
}
但我将非常感谢能够展示如何使用 rxJava 执行相同操作的人。
原文由 Yura Buyaroff 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您的
Observable
发出List
,您可以使用这些运算符:flatMapIterable
(将您的列表转换为可观察的项目)map
(将您的项目转换为另一个项目)toList
运算符(将完成的 Observable 转换为从完成的 Observable 发出项目列表的 Observable)