[解決済み] RxJavaのflatmapとswitchmapの違いは何ですか?
質問
その rxjava doc switchmap の定義はかなり曖昧で、この定義にリンクしているのは 同ページ をflatmapと呼びます。この2つの演算子の違いは何ですか?
どのように解決するのですか?
ドキュメントによると、( http://reactivex.io/documentation/operators/flatmap.html )
その
switchMap
は、まるで
flatMap
,
しかし
は、ソース observable から新しいイベントが発行されるまで、新しい observable からしかアイテムを発行しません。
マーブル図がそれをよく表しています。 ダイアグラムの違いに注目してください。
で
switchMap
2番目の
オリジナル
エミッション(
グリーンマーブル
は、その2番目の
マップ
エミッション(
緑色の四角
)であるため、3番目の
オリジナル
エミッション(
ブルーマーブル
が始まり、すでに最初の
マップ
エミッション(
ブルーダイヤモンド
). 言い換えれば、唯一の
最初
のうち、2つの
地図状
緑色の発光が発生します。青色の菱形に負けたので、緑色の四角形は発光しません。
で
flatMap
の場合、マップされた結果はすべて、たとえ "stale"であっても、出力されます。言い換えれば
両方とも
最初
そして
の2番目です。
マッピングされた
グリーン・エミッションが起こる -- a
グリーンスクエア
が出力されたはずです(一貫したマップ機能を使用した場合。
セカンド
緑色のダイヤモンドが発光しているにもかかわらず
後
その
第一
青ダイヤ)
フラットマップ
関連
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン