Пропуски Junior Опционалы обновлено
Ранний выход через guard let
Вопрос
Допишите функцию, чтобы она возвращала nil при пустом или нечисловом вводе.
func parseAge(_ text: String?) -> Int? {
__(1)__ let text, let age = Int(text) __(2)__ {
return nil
}
return age
}
Попробуйте сами
Заполните пропуски по номерам.
1
2
Показать ответ и разбор
Коротко
guard ... else { return nil } распаковывает оба значения или выходит из функции. Короткая форма let text (без = text) работает с Swift 5.7.
Что в пропусках
1
guard
2
else
Разбор
guard ... else { return nil } распаковывает оба значения или выходит из функции. Короткая форма let text (без = text) работает с Swift 5.7.
Ответьте сами, а не прочитайте
В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.
Термины по теме
Ещё по теме «Опционалы»
- Тип результата опциональной цепочки
- Паттерн case let x? в Swift
- Способы распаковать опционал в Swift
- Что делает force unwrap
- Разница между guard let и if let
- Implicitly unwrapped optional: где уместен
- Задача на Swift: цепочка руководителей
- Задача на Swift: сумма корректных чисел из ввода