Rxjava-conditional-operators

提供:Dev Guides
移動先:案内検索

RxJava-条件演算子

以下は、1つまたは複数のObservableまたは放出されたアイテムを評価する演算子です。

Sr.No. Operator & Description
1

All

指定された基準を満たすために放出されたすべてのアイテムを評価します。

2

Amb

複数のObservableを指定した場合にのみ、最初のObservableからすべてのアイテムを発行します。

3

Contains

Observableが特定のアイテムを放出するかどうかを確認します。

4

DefaultIfEmpty

Observableが何も発行しない場合、デフォルトのアイテムを発行します。

5

SequenceEqual

2つのObservableが同じアイテムシーケンスを放出するかどうかをチェックします。

6

SkipUntil

2番目のObservableがアイテムを放出するまで、最初のObservableによって放出されたアイテムを破棄します。

7

SkipWhile

特定の条件がfalseになるまで、Observableによって発行されたアイテムを破棄します。

8

TakeUntil

2番目の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