Логотип YeaHub

База вопросов

Собеседования

Тренажёр

База ресурсов

Обучение

Навыки

Задачи

Войти

Выбери, каким будет IT завтра — вместе c нами!

YeaHub — это полностью открытый проект, призванный объединить и улучшить IT-сферу. Наш исходный код доступен для просмотра на GitHub. Дизайн проекта также открыт для ознакомления в Figma.

© 2026 YeaHub

AI info

Карта сайта

Документы

Медиа

Назад
Вопрос про Swift : optional, nil, unwrapping, optional chaining, default value

Что такое Optional в Swift? Как его создать?

Этот вопрос проверяет понимание концепции Optional и её роли в обработке отсутствия значений.

Короткий ответ

Optional — это тип, который может содержать либо значение, либо nil (отсутствие значения). Он предотвращает аварийное завершение программы при работе с отсутствующими значениями. Создать Optional можно, добавив ? после типа переменной.

Длинный ответ

В Swift переменные и свойства должны быть инициализированы перед использованием. Однако иногда значение может отсутствовать. Optional позволяет описать такие ситуации. Это безопасный способ работы с отсутствием значения без ошибок времени выполнения.

Создание Optional:
Чтобы указать, что переменная может быть пустой, используйте ?:

var name: String? = "Alice"
name = nil // допустимо, потому что name — это Optional

Unwrapping (распаковка):
Для получения значения Optional нужно "распаковать" его:

if let unwrappedName = name {
    	print("Name is \(unwrappedName)")
} else {
    	print("Name is nil")
}

Принудительная распаковка:
Можно использовать !, чтобы явно получить значение, но если оно равно nil, это вызовет ошибку:

let value: Int? = 42
print(value!) // 42

Использование опциональной цепочки:
Для упрощённого доступа к свойствам и методам:

let uppercasedName = name?.uppercased()

Значение по умолчанию:
Если значение отсутствует, можно указать default:

let defaultName = name ?? "Default Name"

Вывод:

Optional защищает от ошибок, связанных с nil, и делает код в Swift безопаснее и стабильнее.

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.

Уровень

  • Рейтинг:

    2

  • Сложность:

    4

Навыки

  • Swift

    Swift

Ключевые слова

#optional

#nil

#unwrapping

#optional chaining

#default value

Подпишись на iOS Developer в телеграм

  • Аватар

    iOS Guru

    Roman Isakov

    Guru – это эксперты YeaHub, которые помогают развивать комьюнити.