RxJava - Operadores de filtrado

A continuación se muestran los operadores que se utilizan para emitir selectivamente elementos desde un Observable.

No Señor. Operador y descripción
1

Debounce

Emite elementos solo cuando se agota el tiempo de espera sin emitir otro elemento.

2

Distinct

Emite solo elementos únicos.

3

ElementAt

emitir solo elemento en n índice emitido por un Observable.

4

Filter

Emite solo aquellos elementos que pasan la función de predicado dada.

5

First

Emite el primer elemento o el primer elemento que pasó los criterios dados.

6

IgnoreElements

No emite ningún elemento de Observable pero marca la finalización.

7

Last

Emite el último elemento de Observable.

8

Sample

Emite el elemento más reciente con un intervalo de tiempo determinado.

9

Skip

Omite los primeros n elementos de un Observable.

10

SkipLast

Omite los últimos n elementos de un Observable.

11

Take

toma los primeros n elementos de un Observable.

12

TakeLast

toma los últimos n elementos de un Observable.

Ejemplo de operador de filtrado

Cree el siguiente programa Java usando cualquier editor de su elección en, digamos, C: \> RxJava.

ObservableTester.java

import io.reactivex.Observable;
//Using take operator to filter 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
         .take(2)
         .subscribe( letter -> result.append(letter));
      System.out.println(result);
   }
}

Verificar el resultado

Compila la clase usando javac compilador de la siguiente manera:

C:\RxJava>javac ObservableTester.java

Ahora ejecute ObservableTester de la siguiente manera:

C:\RxJava>java ObservableTester

Debería producir el siguiente resultado:

ab