RxJava 与 RxAndroid 入门篇

本文介绍了RxJava和RxAndroid的基本概念、使用方法、核心类以及操作符。RxJava是一个用于处理异步数据流的Java库,而RxAndroid是其针对Android平台的扩展。文章详细讲解了如何引入类库、创建和订阅Observable、使用Scheduler处理多线程,以及各种操作符的用途,如创建、转换、过滤和组合操作符。同时,还提到了背压问题和不同版本的变更。
摘要由CSDN通过智能技术生成

简介

Rx ,响应式编程,是一个使用可观察数据流进行异步编程的编程接口。Rx 的使用有助于提高工作效率, 优雅的处理复杂业务场景。

Rx 的大部分语言库由 ReactiveX 这个组织负责维护,比较流行的有 RxJava / RxJS / Rx.NET。

Rx = Observables + LINQ + Schedulers.

RxJava 是响应式编程的Java实现,有以下特性:

  • 轻量级框架
  • 异步数据处理库
  • 扩展的观察者模式,提供了 onNext,onCompleted,onError 方法
  • 支持 Java 8 lambda
  • 支持 Java 6+ & Android 2.3+
  • 支持异步和同步

RxAndroid 是 RxJava 针对 Android 平台的扩展,提供响应式扩展组件,快速开发 Android 程序。

官方网站
学习网站
名词解释
  • Observable:被观察者,一旦数据发生变化,会通过某种方式通知观察者;
  • Observer:观察者,监听被观察者发射的数据并作出响应;
  • subscribe:订阅,观察者订阅被观察者的数据变化;
  • Scheduler:调度器,用于解决多线程问题;

使用

引入类库
implementation 'io.reactivex.rxjava3:rxjava:3.0.0'
implementation 'io.reactivex.rxjava3:rxandroid:3.0.0'

RxJava 3 将基准提高到了 Java 8,因此项目的编译目标设置需要更改为 Java 8。

android {
   
	compileOptions {
   
        sourceCompatibility = '1.8'
        targetCompatibility = '1.8'
    }
}
简单示例
Observable.create(new ObservableOnSubscribe<Integer>() {
   
	  @Override
	    public void subscribe(@NonNull ObservableEmitter<Integer> emitter) throws Throwable {
   
	        try {
   
	            for (int i=0; i<10; i
  • 5
    点赞
  • 13
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值