Observer<T>

RxJavaは、JavaでReactiveX(リアクティブプログラミング)を実現するためのライブラリ。

GitHub - ReactiveX/RxJava: RxJava – Reactive Extensions for the JVM – a library for composing asynchronous and event-based programs using observable sequences for the Java VM.
Observer (RxJava Javadoc 2.2.5)

Eclipseで、

ワークスペース
ワークスペース

ワークスペース指定。

Java プロジェクト
Java プロジェクト

Java プロジェクトを選択。

プロジェクト作成
プロジェクト作成

プロジェクト作成。

ソースなど設定はこのまま
ソースなど設定はこのまま

ソースなど設定はこのまま。

パースペクティブ
パースペクティブ

パースペクティブ

クラスの追加
クラスの追加

クラスの追加。

MainClass.java
MainClass.java

MainClassを追加。

Javaスタンドアロンアプリの場合、どうやってRxJavaを使うのかがわからなかったが、

The Central Repository Search Engine

ひとまずThe Central Repositoryから、

RxJava
RxJava

jarをダウンロード。

lib
lib

jarをlibフォルダの下に置く。

プロパティ
プロパティ

プロパティから、

JARの追加
JARの追加

JARの追加で、

rxjava
rxjava

rxjavaのjarを選択。

クラスを追加
クラスを追加

クラスを追加。

CustomObserver.java
CustomObserver.java

CustomObserverとする。

実装
実装

rx.Observer<String>のインターフェースを実装する。

onNextでarg0を出力。

MainClass.javaは、

表示する文字列"ABC", "XYZ"は配列sarrayにまとめる。
Observable.fromでこのsarrayを持つobservableができる。
observable.subscribeでobserver1とobserver2を登録するのだが、その時点でCustomObserverのonNextが実行される。

onNext: ABC
onNext: XYZ
onNext: ABC
onNext: XYZ

この辺はC#版と使い方が違うので、今後また調べていきたいところ。

Sample/rxjava/Observer_T/Observer_T/src/Observer_T at master · bg1bgst333/Sample · GitHub