RxJava 条件操作符

RxJava 条件操作符

以下是一个或多个被发射的Observable或项目的评估操作符。

Sr.No. 操作 & 描述
1 All 评估所有发出的项目以满足给定的条件。
2 Amb 仅在多个Observables给出的情况下从第一个Observable发出所有项目。
3 Contains 检查Observable是否发出特定项目。
4 DefaultIfEmpty 如果Observable不发出任何内容,则发出默认项目。
5 SequenceEqual 检查两个Observables是否发出相同的项目序列。
6 SkipUntil 丢弃第一个Observable发出的项目,直到第二个Observable发出项目。
7 SkipWhile 丢弃Observable发出的项目,直到给定的条件变为false。
8 TakeUntil 在第二个Observable发出项目或终止之后,丢弃Observable发出的项目。
9 TakeWhile 在指定条件变为false后,丢弃Observable发出的项目。

条件运算符示例

使用您选择的任何编辑器在C:> RxJava中创建以下Java程序。

ObservableTester.java

import io.reactivex.Observable;
//Using defaultIfEmpty operator to operate on an 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);
   }
}

验证结果

使用 javac 编译器编译该类,如下所示−

C:\RxJava>javac ObservableTester.java

现在按照以下步骤运行ObservableTester –

C:\RxJava>java ObservableTester

它应该产生以下输出:

No Data
a

Python教程

Java教程

Web教程

数据库教程

图形图像教程

大数据教程

开发工具教程

计算机教程