rxjava2 和 rxkotlin 有什么区别?

What is the difference between rxjava2 and rxkotlin?

rxjava2依赖和rxkotlin依赖有什么区别。 如果我使用 rxkotlin 依赖项,我是否需要添加 rxjava2 依赖项。

implementation 'io.reactivex.rxjava2:rxkotlin:x.y.z'
// do i need to add the below dependencies also?
implementation 'io.reactivex.rxjava2:rxjava:2.2.4'
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'

由于 Kotlin 与 Java 是 100% 互操作的,您可以毫无困难地在 Kotlin 项目中使用大多数 Java 库——RxJava 库也不例外。

有一个专用的 RxKotlin library,它是常规 RxJava 库的 Kotlin 包装器。这个包装器提供了针对 Kotlin 环境优化 RxJava 的扩展,可以进一步减少您需要编写的样板代码量。

如果您使用的是 rxkotlin,您只需添加以下行

implementation 'io.reactivex:rxkotlin:x.y.z'

如果你想使用rxjava2你需要包括其他依赖项即

implementation 'io.reactivex.rxjava2:rxjava:2.2.4'
implementation 'io.reactivex.rxjava2:rxandroid:2.1.0'

但如果您使用 Kotlin 作为编程语言,我会建议您使用 rxkotlin

更多细节参考this link

the thing is RX stands for Reactive Extensions , and Rx Java , Rx Kotlin or Rx Swift all are the implementation of Reactive Extensions in that particular language.

什么是 RxJAVA? RxJava 是 Reactive Extensions 的 Java VM 实现。我们可以在任何线程上创建异步数据流,对其进行转换,并且这些异步数据流可以被任何线程上的观察者使用。

什么是 RxKotlin? RxKotlin 是 Reactive Extensions 的 Kotlin 实现。

什么是 RxAndroid? 它特定于 Android 平台,在 RxJava.

之上添加了一些 类

更多详细信息,请访问我收集的 rxjava 简单示例https://github.com/myJarvis/Intro_to_RxJava

更明确地说,RxKotlin 有一些 Kotlin 附带的方便的扩展功能。

您可以使用 {RxJava & RxAndroid} 或 {RxKotlin}

You can use RxJava with Kotlin out-of-the-box

正如您在 https://mvnrepository.com/artifact/io.reactivex.rxjava2/rxkotlin/2.3.0, rxkotlin depends on rxjava. So it's automatically added as a transitive dependency 看到的,除非您明确排除它。

不出所料,rxkotlin 依赖于 rxandroid 所以如果你想使用它你需要添加它。 rxandroidrxkotlin都使用相同的rxjava类型,所以它们可以自由互操作。

此 Android 开发中的主要库是 RxJava。由于 Kotlin 与 Java 库完全互操作,RxKotlin 只是原始 Rx[= 的一个薄包装21=].