RxJava - Combinaison d'opérateurs

Voici les opérateurs qui sont utilisés pour créer un seul observable à partir de plusieurs observables.

N ° Sr. Opérateur et description
1 And/Then/When

Combinez des ensembles d'articles à l'aide des intermédiaires Pattern et Plan.

2 CombineLatest

Combinez le dernier élément émis par chaque observable via une fonction spécifiée et émettez l'élément résultant.

3 Join

Combinez les éléments émis par deux observables s'ils sont émis pendant la période de temps du deuxième élément émis par observable.

4 Merge

Combine les éléments émis par les observables.

5 StartWith

Émettre une séquence d'éléments spécifiée avant de commencer à émettre les éléments de la source Observable

6 Switch

Émet les éléments les plus récents émis par les Observables.

sept Zip

Combine les éléments d'observables en fonction de la fonction et émet les éléments résultants.

Exemple d'opérateur combiné

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 combineLatest operator to combine Observables
public class ObservableTester {
   public static void main(String[] args) {    
      Integer[] numbers = { 1, 2, 3, 4, 5, 6};
      String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
      final StringBuilder result = new StringBuilder();
      Observable<String> observable1 = Observable.fromArray(letters);
      Observable<Integer> observable2 = Observable.fromArray(numbers);
      Observable.combineLatest(observable1, observable2, (a,b) -> a + b)
         .subscribe( letter -> result.append(letter));
      System.out.println(result);
   }
}

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 -

g1g2g3g4g5g6