RxJava - Opérateurs conditionnels

Voici les opérateurs qui évaluent un ou plusieurs observables ou éléments émis.

N ° Sr. Opérateur et description
1

All

Évalue tous les éléments émis pour répondre à des critères donnés.

2

Amb

Émet tous les éléments du premier observable uniquement avec plusieurs observables.

3

Contains

Vérifie si un observable émet un élément particulier ou non.

4

DefaultIfEmpty

Émet l'élément par défaut si Observable n'émet rien.

5

SequenceEqual

Vérifie si deux observables émettent la même séquence d'éléments.

6

SkipUntil

Ignore les éléments émis par le premier observable jusqu'à ce qu'un deuxième observable émette un élément.

sept

SkipWhile

Ignorez les éléments émis par un observable jusqu'à ce qu'une condition donnée devienne fausse.

8

TakeUntil

Ignore les éléments émis par un observable après qu'un deuxième observable émet un élément ou se termine.

9

TakeWhile

Ignore les éléments émis par un observable après qu'une condition spécifiée devient fausse.

Exemple d'opérateur conditionnel

Créez le programme Java suivant en utilisant n'importe quel éditeur de votre choix dans, par exemple, C: \> RxJava.

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

Vérifiez le résultat

Compilez la classe en utilisant javac compilateur comme suit -

C:\RxJava>javac ObservableTester.java

Exécutez maintenant l'ObservableTester comme suit -

C:\RxJava>java ObservableTester

Il devrait produire la sortie suivante -

No Data
a