Following are the operators which are used to create an Observable.
Sr.No. | Operator & Description |
---|---|
1 | Create Creates an Observable from scratch and allows observer method to call programmatically. |
2 | Defer Do not create an Observable until an observer subscribes. Creates a fresh observable for each observer. |
3 | Empty/Never/Throw Creates an Observable with limited behavior. |
4 | From Converts an object/data structure into an Observable. |
5 | Interval Creates an Observable emitting integers in sequence with a gap of specified time interval. |
6 | Just Converts an object/data structure into an Observable to emit the same or same type of objects. |
7 | Range Creates an Observable emitting integers in sequence of given range. |
8 | Repeat Creates an Observable emitting integers in sequence repeatedly. |
9 | Start Creates an Observable to emit the return value of a function. |
10 | Timer Creates an Observable to emit a single item after given delay. |
Create the following Java program using any editor of your choice in, say, C:\> RxJava.
import io.reactivex.Observable; //Using fromArray operator to create 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