Ответ
Observable — это основа реактивного программирования в RxJava. Основные функции:
- Создание –
just(),fromIterable(),create(),interval()
Observable.just("Hello")
Observable.fromIterable(listOf(1, 2, 3))
- Операторы преобразования –
map(),flatMap(),filter()
Observable.range(1, 5)
.map { it * 2 }
.filter { it > 5 }
- Комбинирование –
merge(),concat(),zip()
Observable.zip(obs1, obs2) { a, b -> a + b }
- Управление потоками –
subscribeOn(),observeOn()
observable.subscribeOn(Schedulers.io())
.observeOn(AndroidSchedulers.mainThread())
-
Обработка ошибок –
onErrorReturn(),retry() -
Подписка –
subscribe()с обработкойonNext,onError,onComplete
Observable работает по принципу push-модели: данные отправляются подписчику при появлении.