Filter operator filters an Observable making sure that emitted items match specified condition.
Following are the operators which are used to selectively emit item(s) from an Observable.
| Sr.No. |
Operator & Description |
| 1 |
Debounce
Emits items only when timeout occurs without emiting another item.
|
| 2 |
Distinct
Emits only unique items.
|
| 3 |
ElementAt
emit only item at n index emitted by an Observable.
|
| 4 |
Filter
Emits only those items which pass the given predicate function.
|
| 5 |
First
Emits the first item or first item which passed the given criteria.
|
| 6 |
IgnoreElements
Do not emits any items from Observable but marks completion.
|
| 7 |
Last
Emits the last element from Observable.
|
| 8 |
Sample
Emits the most recent item with given time interval.
|
| 9 |
Skip
Skips the first n items from an Observable.
|
| 10 |
SkipLast
Skips the last n items from an Observable.
|
| 11 |
Take
takes the first n items from an Observable.
|
| 12 |
TakeLast
takes the last n items from an Observable.
|
Examples:
|
public class RxFiltering {
public static void main(String args[])
{
Observable sourceObservable = Observable.range(1, 10);
Observable filteredObservable = sourceObservable
.filter(i -> i % 2 != 0);
filteredObservable.subscribe(s->System.out.println(s
));
}
}
|
Output
Example 2:
|
Observable sourceObservable = Observable.range(1, 10);
Observable takeObservable = sourceObservable
.take(2);
takeObservable.subscribe(s->System.out.println(s
));
|
Output
Example 3:
|
Observable sourceObservable = Observable.range(1, 10);
Observable takeWhileObservable = sourceObservable
.takeWhile(i -> i < 5 );
takeWhileObservable.subscribe(s->System.out.println(s
));
|
Output
Example 4:
|
Observable sourceObservable = Observable.range(1, 10);
Maybe filteredObservable = sourceObservable.elementAt(4);
filteredObservable.subscribe(s->System.out.println(s));
|
Output
RxJava Tutorial
RxJava - Environment Setup
RxJava’s Characteristics
RxJava - How Observable works
RxJava - Single Observable
RxJava - MayBe Observable
RxJava - Completable Observable
RxJava - Using CompositeDisposable
RxJava - Creating Operators
RxJava - Transforming Operators
RxJava - Filtering Operators
RxJava - Combining Operators
RxJava - Utility Operators
RxJava - Conditional Operators
RxJava - Mathematical Operators
RxJava - Subjects
RxJava - PublishSubject
RxJava - BehaviorSubject
RxJava - AsyncSubject
RxJava - ReplaySubject
RxJava - Schedulers
RxJava - Trampoline Scheduler
RxJava - NewThread Scheduler
RxJava - Computation Scheduler
RxJava - IO Scheduler
RxJava - From Scheduler
RxJava - Buffering