Back to questions
Яндекс
Junior — Middle
68
Каково назначение оператора Maybe в библиотеке RxJava и в каких случаях его используют?
Companies where asked
Answer from AI
sobes.tech AI
В RxJava оператор Maybe представляет собой тип Observable, который может завершиться одним из трёх способов:
- Эмитировать одно значение и завершиться успешно.
- Завершиться без значения (empty).
- Завершиться с ошибкой.
Maybe используется, когда результат может быть либо одним элементом, либо отсутствовать вовсе, например, при запросе к базе данных, где запись может быть найдена или нет.
Пример использования:
Maybe<String> maybeUser = getUserFromDb(userId);
maybeUser.subscribe(
user -> System.out.println("User found: " + user),
throwable -> System.err.println("Error: " + throwable),
() -> System.out.println("User not found")
);
Здесь getUserFromDb возвращает Maybe<String>, который либо выдаст пользователя, либо завершится без значения, если пользователь не найден.