モケラ

Tech Sheets

mokelab

RxJavaのObservable / Single / Completable

最終更新日:2017-02-26

Observable

RxJavaの最重要人物がObservableです。Observableとは「観察可能なもの」という意味です。次の図のように、データを出す箱のようなものというです。

Observableは次のような性質があります。

  • データを非同期で出力する
  • 一度に複数個データを出力する
  • データを出し終えたら完了を通知する

Single

Observableはデータをいくつか出力する箱でした。しかしObservableの中にはデータを1つだけ出力するものもあるでしょう。この時役立つのがSingleです。Singleは基本的な役割はObservableと同じですが、データを1つしか出力しないという性質を持ちます。「APIコールして結果を1つだけ出力する」みたいなときに便利です。

Completable

データの更新API呼び出しなど、そもそも結果となるデータのない処理もあるでしょう。その時に役立つのがCompletableです。データは1つも出力せず、完了したことだけを通知するObservableです。

このページのまとめ

Observableが基本となるものです。用途に応じてSingleCompletableを用いることで、コードをシンプルにすることができます。

一覧に戻る