Блок catch
Блок catch является частью конструкции try-catch в Kotlin и служит для обработки исключений.
Когда в блоке try возникает исключение, выполнение переходит в соответствующий блок catch,
который может обработать это исключение. В параметр блока catch передается объект исключения.
Синтаксис
try {
// код, который может вызвать исключение
} catch (e: ExceptionType) {
// обработка исключения
}
Пример
Обработка исключения при делении на ноль:
try {
val res = 10 / 0
} catch (e: ArithmeticException) {
println("Caught exception: ${e.message}")
}
Результат выполнения кода:
String "Caught exception: / by zero"
Пример
Обработка нескольких типов исключений:
try {
val arr = arrayOf(1, 2, 3)
println(arr[5])
} catch (e: ArrayIndexOutOfBoundsException) {
println("Array index out of bounds")
} catch (e: Exception) {
println("General exception")
}
Результат выполнения кода:
String "Array index out of bounds"
Пример
Использование блока finally:
try {
val file = openFile("data.txt")
} catch (e: FileNotFoundException) {
println("File not found")
} finally {
println("This block always executes")
}
Результат выполнения кода (если файл не найден):
String "File not found"
String "This block always executes"