当前位置: 首页 > 面试题库 >

RxJava:如何将对象列表转换为另一个对象列表

容寒
2023-03-14
问题内容

我有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 进行相同操作的人,我将非常感激。


问题答案:

如果Observable发出List,则可以使用以下运算符:

  • flatMapIterable (将您的列表转换为可观察项)
  • map (将您的商品转换为其他商品)
  • toList 运算符(将完成的Observable转换为Observable,以从完成的Observable发出项目列表)
        Observable<SourceObjet> source = ...
    source.flatMapIterable(list -> list)
          .map(item -> new ResultsObject().convertFromSource(item))
          .toList()
          .subscribe(transformedList -> ...);


 类似资料:
  • 问题内容: 我想使用Java 8技巧在一行中执行以下操作。 给定此对象定义: 和a ,我想得到a ,它是第一个列表中所有s对象的列表- 顺序相同。 我可以使用Java中的循环来做到这一点,但我相信Java8中应该有一个单行lambda可以做到这一点。我无法在线找到解决方案。也许我没有使用正确的搜索词。 有人可以为这种转换建议一个lambda或另一种线吗? 问题答案: 这应该可以解决问题: 也就是说

  • 我可以在Java中使用循环来实现这一点,但我认为在Java8中应该有一个一行程序lambda来实现这一点。我无法在网上找到解决方案。也许我没有使用正确的搜索词。 有人能为这个转换提出一个lambda或另一个一行程序吗?

  • 问题内容: Json字符串: C#类: C#将json转换为电影的c#列表: 我的变量最终是一个计数为0的空列表。我是否缺少某些内容? 问题答案: 您的C#类映射与json结构不匹配。 解决方案:

  • 我有以下格式的列表 如何根据其键找到值,例如我需要第3行的名称...以及如何根据行对其进行排序

  • 问题内容: 我的DAO中有一个hibernate的呼叫,看起来像这样 我收到一条错误消息,说我无法将结果列表转换为模型类型“关联”。我不明白为什么会这样。我只返回关联表中的字段。 问题答案: 您需要使用来指定要转换为结果的实体类,因为您正在执行对实体一无所知的SQL查询: 也可以看看: 18.1.2。实体查询

  • 问题内容: 我正在尝试学习如何在Python中使用itertools.groupby,我想找到每个字符组的大小。最初,我尝试查看是否可以找到单个组的长度: 我每次都会得到0 我做了一些研究,发现其他人正在这样做: 哪个很棒。我感到困惑的是,为什么后者代码有效,而前者却无效?如果我只想像原来的代码那样只让第n个小组参加,那我该怎么办? 问题答案: 第一种方法行不通的原因是,当您使用以下方法创建列表时