RxJava 条件运算符
精华
小牛编辑
120浏览
2023-03-14
RxJava 条件运算符 介绍
以下是用于 Observable 的条件运算符。
运算符 | 描述 |
---|---|
All | 评估发出的所有项目以满足给定标准。 |
Amb | 仅在给定多个 Observable 的情况下从第一个 Observable 发出所有项目。 |
Contains | 检查 Observable 是否发出特定项目。 |
DefaultIfEmpty | 如果 Observable 不发出任何内容,则发出默认项。 |
SequenceEqual | 检查两个 Observable 是否发出相同的项目序列。 |
SkipUntil | 丢弃第一个 Observable 发出的项目,直到第二个 Observable 发出一个项目。 |
SkipWhile | 丢弃 Observable 发出的项目,直到给定的条件变为假。 |
TakeUntil | 在第二个 Observable 发出项目或终止后丢弃由 Observable 发出的项目。 |
TakeWhile | 在指定条件变为 false 后丢弃 Observable 发出的项目。 |
RxJava 条件运算符 示例
package cn.xnip;
import io.reactivex.Observable;
public class ObservableTester {
public static void main(String[] args) {
final StringBuilder result = new StringBuilder();
Observable.empty()
.defaultIfEmpty("No Data")
.subscribe(s -> result.append(s));
System.out.println(result);
String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
final StringBuilder result1 = new StringBuilder();
Observable.fromArray(letters)
.firstElement()
.defaultIfEmpty("No data")
.subscribe(s -> result1.append(s));
System.out.println(result1);
}
}
输出结果为: