Ответ
Observable — это часть библиотеки RxJava, представляющая поток данных, который может испускать 0, 1 или множество элементов. Он работает по принципу push-модели: подписчик получает данные, ошибки или сигнал завершения.
Пример:
val observable = Observable.just("Hello", "World")
observable.subscribe(
{ item -> println(item) }, // onNext
{ error -> println(error) }, // onError
{ println("Completed") } // onComplete
)
Особенности:
- Ленивый: Выполняется только при подписке (
subscribe). - Гибкий: Поддерживает операторы (
map,filter,flatMapи др.). - Многопоточность: Управляется через
Schedulers.
Используется для асинхронных операций, обработки событий UI, сетевых запросов.