Following are the operators which are used to transform an item emitted from an Observable.
Sr.No. | Operator & Description |
---|---|
1 | Buffer Gathers items from Observable into bundles periodically and then emit the bundles rather than items. |
2 | FlatMap Used in nested observables. Transforms items into Observables. Then flatten the items into single Observable. |
3 | GroupBy Divide an Observable into set of Observables organized by key to emit different group of items. |
4 | Map Apply a function to each emitted item to transform it. |
5 | Scan Apply a function to each emitted item, sequentially and then emit the successive value. |
6 | Window Gathers items from Observable into Observable windows periodically and then emit the windows rather than items. |
Create the following Java program using any editor of your choice in, say, C:\> RxJava.
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); } }
Compile the class using javac compiler as follows −
C:\RxJava>javac ObservableTester.java
Now run the ObservableTester as follows −
C:\RxJava>java ObservableTester
It should produce the following output −
ABCDEFG