RxJava2 flatMap和flatMapIterable

时间:2018-02-05 01:28:30

标签: java android rx-java2

RxJava2 中,flatMap()flatMapIterable()之间有什么区别?

flatMapIterable()背后的逻辑是什么?

1 个答案:

答案 0 :(得分:6)

(node:1248) UnhandledPromiseRejectionWarning: Unhandled promise rejection (rejection id: 1): AssertionError [ERR_ASSERTION]: Invalid register options "value" must be an object (node:1248) [DEP0018] DeprecationWarning: Unhandled promise rejections are deprecated. In the future, promise rejections that are not handled will terminate the Node.js process with a non-zero exit code.

将上游源的值映射到flatMap,订阅它们并以可能交错的方式合并它们的结果。换句话说,它合并了动态生成的推送源。

Observable

将上游源的值映射到flatMapIterable并逐个迭代它们。换句话说,它合并了动态生成的拉源。

您可以将Iterable表达为flatMapIterableflatMap(Observable::fromIterable)

除了作为类型之间的快捷方式之外,它是直接实现的,因此提供considerably lower overhead