Ниже приведены операторы, которые используются для преобразования элемента, испускаемого из наблюдаемой.
Sr.No. | Оператор и описание |
---|---|
1 |
буфер Периодически собирает предметы из Observable в связки, а затем испускает связки, а не предметы. |
2 |
FlatMap Используется во вложенных наблюдаемых объектах. Преобразует предметы в Observables. Затем сгладьте предметы в единый Observable. |
3 |
Группа по Разделите Observable на набор Observables, организованных по ключу, чтобы испустить другую группу предметов. |
4 |
карта Примените функцию к каждому излучаемому элементу, чтобы преобразовать его. |
5 |
сканирование Примените функцию к каждому излучаемому элементу последовательно, а затем введите последующее значение. |
6 |
Окно Периодически собирает предметы из Observable в окна Observable, а затем испускает окна, а не предметы. |
буфер
Периодически собирает предметы из Observable в связки, а затем испускает связки, а не предметы.
FlatMap
Используется во вложенных наблюдаемых объектах. Преобразует предметы в Observables. Затем сгладьте предметы в единый Observable.
Группа по
Разделите Observable на набор Observables, организованных по ключу, чтобы испустить другую группу предметов.
карта
Примените функцию к каждому излучаемому элементу, чтобы преобразовать его.
сканирование
Примените функцию к каждому излучаемому элементу последовательно, а затем введите последующее значение.
Окно
Периодически собирает предметы из Observable в окна Observable, а затем испускает окна, а не предметы.
Пример оператора преобразования
Создайте следующую Java-программу, используя любой редактор по вашему выбору, например, в 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); } }
Проверьте результат
Скомпилируйте класс с помощью компилятора javac следующим образом:
C:\RxJava>javac ObservableTester.java
Теперь запустите ObservableTester следующим образом:
C:\RxJava>java ObservableTester
Он должен произвести следующий вывод —