В Swift обработка ошибок использует три варианта оператора try, каждый подходит для разных сценариев при вызове функций, которые могут throw.
try — Стандартная обработка ошибокИспользуй try внутри блока do-catch, когда тебе нужно явно обработать ошибки.
do {
let result = try someThrowingFunction()
} catch {
print(error)
}
Это самый распространённый и рекомендуемый подход в продакшн-коде.
try? — Результат как Optionaltry? преобразует результат в optional — возвращает nil если выброшена ошибка, отбрасывая детали ошибки.
let result = try? someThrowingFunction()
try! — Принудительное извлечениеtry! принудительно извлекает результат и упадёт в рантайме, если выброшена ошибка.
let result = try! someThrowingFunction()
try — явная обработка, требует do-catch, самый безопасный вариантtry? — подавляет ошибки, возвращает nil при отказеtry! — упадёт при отказе, используй с крайней осторожностьюОператор try? преобразует результат функции, выбрасывающей исключение, в optional и возвращает nil при ошибке, одновременно сохраняя информацию об ошибке для проверки.
Новый — ещё не проверен сообществом
Вы