当前位置: 首页 > 教程 > RxJava >

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);
   }
}

输出结果为: