RxJava与面向对象Java的对比和基础数据构造

本文介绍RxJava中源数据(SourceObservable)的概念及其在业务逻辑中的作用。文章详细解释了如何通过创建Observable来驱动业务流程,并展示了如何利用Observer处理数据,生成新的Observable参与计算。

面向对象编程的Java,类(或者类实例)是基本单位。所有的数据和方法都包含在类中,通过类(或者类实例)使用。

面向对象编程数据的主要来源有两个:
** 一个是类的属性,
** 另一个是方法的参数。

类的属性是内部的,包含状态的。
参数是外部的,可以影响类内部属性的状态,简单的说就是影响属性值的变化。

类中的属性是随着类实例的创建而产生并存在的。不依赖于外部的参数,尽管属性可能没有值。

操作数据都是类中的方法。

=====================================

RxJava 中的数据由 Observable 提供。

在 RxJava 运行过程中,所有的 Java 提供的数据类型必须转换成 Observable ,或者说必须使用 Observable 封装起来。

RxJava 是数据驱动的,最原始的驱动数据可以称之为 源数据(source data或者 source obserable)。

RxJava的数据也可以分为两类:
一类是Source Observable,也就是驱动业务启动的最原始的数据。
另一类是逻辑处理过程中,作为参数或者返回值在业务逻辑中流转的、通过操作映射出来的新 Observable;

RxJava 中的 Observable 只提供数据,或者说源数据。
数据的使用者被作为参数传到 Observable 内部 ,在 Observable 内部通过某种机制将 数据 提供给数据使用者使用。在数据使用者使用这些数据的时候,组织并驱动业务逻辑和业务流程的实现。

数据的使用者称为 Observer 。

Observer 在使用数据的时候,可以对源数据(Source Observable)进行处理,处理的结果(如果需要)则必须生成新的 Observable 对象(也就是说 Observable 的数据是不可变的,就像 Java String 类型一样),新的 Observable 作为参数在业务逻辑中流转,产生更多的 Observable 参与计算。

总结一下:
1、首先要先有 Observable ,这个 Observable 称为 Source Observale;
2、把处理业务逻辑的 Observer 以参数的形式赋给第一步创建的Observable;

因此,生成 Observable 是学习 RxJava的第一堂必修课。

运行RxJava的两个步骤:
1、创建 Observable
Observable 提供很多创建 Observable 的静态方法。
例如:
Observable.from()提供从Java的数据结构创建Observable的一些方法。

List<String> list = Arrays.asList(
     "blue", "red", "green", "yellow", "orange","cyan", "purple");
Observable<String> listObservable =  Observable.from(list);

2、调用 Observable实例的subscribe()方法。
Observable提供了多个 subscribe()方法的重载,包括
- subscribe()
- subscribe(Action1 next)
- subscribe(Observer observer)
- subscribe(Subscriber subscriber)

例如:

listObservable.subscribe(color -> System.out.println(color));

输出结果:

blue
red
green
yellow
orange
cyan
purple

为了更好的说明和演示 RxJava 的代码,下篇文章讲述搭建最简单的 RxJava 的运行环境。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值