Назад к вопросам
Иннотех
Junior — Middle
76
Каким образом осуществляется обработка ошибок в потоках данных (Flow)?
Компании, где спрашивали
Ответ от нейросети
sobes.tech AI
В Kotlin Flow обработка ошибок осуществляется с помощью оператора catch, который перехватывает исключения, возникающие в потоке данных. Это позволяет обработать ошибку, например, записать лог, заменить ошибочный элемент или завершить поток с определённым действием.
Пример:
flowOf(1, 2, 0, 4)
.map { 10 / it } // при делении на 0 возникнет исключение
.catch { e -> emit(-1) } // при ошибке эмитируем -1
.collect { value -> println(value) }
Также можно использовать оператор onCompletion для выполнения действий после завершения потока, включая обработку ошибок.