RxJava - Operadores de transformação
A seguir estão os operadores que são usados para transformar um item emitido de um Observable.
Sr. Não. | Operador e descrição |
---|---|
1 | Buffer Reúne itens do Observável em pacotes periodicamente e, em seguida, emite os pacotes em vez de itens. |
2 | FlatMap Usado em observáveis aninhados. Transforma itens em observáveis. Em seguida, achatar os itens em um único Observável. |
3 | GroupBy Divida um Observável em um conjunto de Observáveis organizado por chave para emitir diferentes grupos de itens. |
4 | Map Aplique uma função a cada item emitido para transformá-lo. |
5 | Scan Aplique uma função a cada item emitido, sequencialmente e, a seguir, emita o valor sucessivo. |
6 | Window Reúne itens de janelas Observáveis em janelas Observáveis periodicamente e, a seguir, emite as janelas em vez de itens. |
Exemplo de operador de transformação
Crie o seguinte programa Java usando qualquer editor de sua escolha em, digamos, C: \> RxJava.
ObservableTester.java
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);
}
}
Verifique o resultado
Compile a classe usando javac compilador da seguinte forma -
C:\RxJava>javac ObservableTester.java
Agora execute o ObservableTester da seguinte maneira -
C:\RxJava>java ObservableTester
Ele deve produzir a seguinte saída -
ABCDEFG