Rxjava-combining-operators
提供:Dev Guides
RxJava-演算子の組み合わせ
以下は、複数のObservableから単一のObservableを作成するために使用される演算子です。
Sr.No. | Operator & Description |
---|---|
1 |
And/Then/When パターンとプランの仲介を使用してアイテムセットを結合します。 |
2 |
CombineLatest 指定された関数を介して各Observableから放出された最新のアイテムを結合し、結果のアイテムを放出します。 |
3 |
Join 2番目のObservableから放出されたアイテムの時間枠中に放出された場合、2つのObservableから放出されたアイテムを結合します。 |
4 |
Merge Observablesから放出されたアイテムを組み合わせます。 |
5 |
StartWith ソースのObservableからアイテムの発行を開始する前に、指定されたアイテムのシーケンスを発行します |
6 |
Switch Observablesによって放出された最新のアイテムを放出します。 |
7 |
Zip 機能に基づいてObservablesのアイテムを結合し、結果のアイテムを出力します。 |
結合演算子の例
C:\> RxJavaなどで選択したエディターを使用して、次のJavaプログラムを作成します。
ObservableTester.java
import io.reactivex.Observable;
//Using combineLatest operator to combine Observables
public class ObservableTester {
public static void main(String[] args) {
Integer[] numbers = { 1, 2, 3, 4, 5, 6};
String[] letters = {"a", "b", "c", "d", "e", "f", "g"};
final StringBuilder result = new StringBuilder();
Observable<String> observable1 = Observable.fromArray(letters);
Observable<Integer> observable2 = Observable.fromArray(numbers);
Observable.combineLatest(observable1, observable2, (a,b) -> a + b)
.subscribe( letter -> result.append(letter));
System.out.println(result);
}
}
結果を確認する
次のように javac コンパイラを使用してクラスをコンパイルします-
C:\RxJava>javac ObservableTester.java
今ObservableTesterを次のように実行します-
C:\RxJava>java ObservableTester
それは次の出力を生成する必要があります-
g1g2g3g4g5g6