RxJava - 创建运算符
以下是用于创建 Observable 的运算符。
Sr.No. | 运算符和说明 |
---|---|
1 | Create 从头开始创建 Observable 并允许观察者方法以编程方式调用。 |
2 | Defer 在观察者订阅之前不要创建 Observable。为每个观察者创建一个新的可观察对象。 |
3 | Empty/Never/Throw 创建一个具有有限行为的可观察对象。 |
4 | From 将对象/数据结构转换为可观察对象。 |
5 | Interval 创建一个按指定时间间隔按顺序发射整数的可观察对象。 |
6 | Just 将对象/数据结构转换为 Observable,以发出相同或相同类型的对象。 |
7 | Range 创建一个 Observable,按给定范围的顺序发出整数。 |
8 | Repeat 创建一个 Observable,按顺序重复发出整数。 |
9 | Start 创建一个 Observable,以发出函数。 |
10 | Timer 创建一个 Observable,在给定延迟后发出单个项目。 |
创建运算符示例
使用您选择的任何编辑器在 C:\> RxJava 中创建以下 Java 程序。
ObservableTester.java
import io.reactivex.Observable; //使用 fromArray 运算符创建 Observable public class ObservableTester { public static void main(String[] args) { String[] letters = {"a", "b", "c", "d", "e", "f", "g"}; final StringBuilder result = new StringBuilder(); Observable<String> observable = Observable.fromArray(letters); observable .map(String::toUpperCase) .subscribe( letter -> result.append(letter)); System.out.println(result); } }
验证结果
使用 javac 编译器编译类,如下所示 −
C:\RxJava>javac ObservableTester.java
现在运行 ObservableTester,如下所示 −
C:\RxJava>java ObservableTester
它应该产生以下输出 −
ABCDEFG