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