RxJava - Trasformare gli operatori

Di seguito sono riportati gli operatori che vengono utilizzati per trasformare un elemento emesso da un osservabile.

Sr.No. Operatore e descrizione
1

Buffer

Raccoglie periodicamente gli elementi da Observable in bundle e quindi emette i bundle anziché gli articoli.

2

FlatMap

Utilizzato in osservabili annidati. Trasforma gli oggetti in osservabili. Quindi appiattisci gli elementi in un singolo osservabile.

3

GroupBy

Dividi un osservabile in un insieme di osservabili organizzati per chiave per emettere diversi gruppi di elementi.

4

Map

Applicare una funzione a ciascun elemento emesso per trasformarlo.

5

Scan

Applicare una funzione a ciascun elemento emesso, in sequenza e quindi emettere il valore successivo.

6

Window

Raccoglie periodicamente gli elementi da Observable a Observable e quindi emette le finestre anziché gli elementi.

Esempio di operatore di trasformazione

Crea il seguente programma Java utilizzando qualsiasi editor di tua scelta, ad esempio C: \> RxJava.

ObservableTester.java

import io.reactivex.Observable;
//Using map operator to transform an Observable
public class ObservableTester  { 
   public static void main(String[] args) {    
      String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
      final StringBuilder result = new StringBuilder();
      Observable<String> observable = Observable.fromArray(letters);
      observable
         .map(String::toUpperCase)
         .subscribe( letter -> result.append(letter));
      System.out.println(result);
   }
}

Verifica il risultato

Compila la classe usando javac compilatore come segue -

C:\RxJava>javac ObservableTester.java

Ora esegui ObservableTester come segue:

C:\RxJava>java ObservableTester

Dovrebbe produrre il seguente output:

ABCDEFG