Учебники

RxJava — Операторы подключения

Ниже приведены операторы, которые более точно контролируют подписку.

Sr.No. Оператор и описание
1

соединять

Поручить подключаемому Observable для передачи предметов своим подписчикам.

2

Публиковать

Преобразует наблюдаемое в подключаемое наблюдаемое.

3

RefCount

Преобразует подключаемый объект Observable в обычный объект Observable.

4

переигровка

Убедитесь, что каждый подписчик просматривает одинаковую последовательность отправленных элементов, даже после того, как Observable начал излучать элементы и подписчики подписываются позже.

соединять

Поручить подключаемому Observable для передачи предметов своим подписчикам.

Публиковать

Преобразует наблюдаемое в подключаемое наблюдаемое.

RefCount

Преобразует подключаемый объект Observable в обычный объект Observable.

переигровка

Убедитесь, что каждый подписчик просматривает одинаковую последовательность отправленных элементов, даже после того, как Observable начал излучать элементы и подписчики подписываются позже.

Пример подключения оператора

Создайте следующую Java-программу, используя любой редактор по вашему выбору, например, в C: \> RxJava.

ObservableTester.java

import io.reactivex.Observable;
import io.reactivex.observables.ConnectableObservable;
//Using connect operator on a ConnectableObservable
public class ObservableTester {
   public static void main(String[] args) {
      String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
      final StringBuilder result = new StringBuilder();
      ConnectableObservable<String> connectable = Observable.fromArray(letters).publish();      
      connectable.subscribe(letter -> result.append(letter));
      System.out.println(result.length());
      connectable.connect();
      System.out.println(result.length());
      System.out.println(result);
   }
}

Проверьте результат

Скомпилируйте класс с помощью компилятора javac следующим образом:

C:\RxJava>javac ObservableTester.java

Теперь запустите ObservableTester следующим образом:

C:\RxJava>java ObservableTester

Он должен произвести следующий вывод —