Menu
CoddyTech

Что такое опциональные значения

Часть раздела Основы путешествия по Swift на Coddy. Урок 11 из 86.

Иногда у переменной вообще может не быть значения. В Swift отсутствие значения обозначается с помощью опционалов. Опционал означает: «значение есть, и оно равно x» или «значения вообще нет».

Чтобы объявить опциональный тип, добавь знак вопроса ? после типа:

var nickname: String? = "Alex"
var age: Int? = nil

В примере выше nickname содержит значение "Alex", а age содержит nil: так в Swift обозначают «отсутствие значения». Обычные переменные не могут быть равны nil, а опционалы могут.

Представь опционал как коробку, в которой может что-то лежать, а может быть пусто. Прежде чем использовать содержимое, нужно проверить, действительно ли там что-то есть. Это важная функция безопасности в Swift, которая помогает предотвратить сбои из-за неожиданно отсутствующих значений.

var score: Int? = 100
print(score) // Optional(100)

score = nil
print(score) // nil

Обрати внимание: когда ты выводишь опционал со значением, отображается Optional(100), а не просто 100. Чтобы получить доступ к фактическому значению внутри, нужно извлечь значение из опционала. Это мы рассмотрим в следующих уроках.

challenge icon

Задание

Легко

Напиши функцию createOptional, которая принимает число и возвращает строку, показывающую, как это число выглядело бы при выводе в виде опционала.

Важно: эта функция возвращает String. Ты создаёшь текст, который выглядит как опционал, а не возвращаешь настоящее опциональное значение.

Когда ты выводишь опционал, содержащий значение, Swift отображает его в формате Optional(value).

Напоминание о синтаксисе функции: В Swift функция, возвращающая значение, использует стрелку ->, чтобы указать тип возвращаемого значения, и ключевое слово return, чтобы вернуть результат. Например:

func myFunction(param: Int) -> String {<br>    return "result"<br>}

Ты можешь сформировать возвращаемую строку с помощью интерполяции строк: "Optional(\(value))": часть \(value) вставляет число непосредственно в строку.

Параметры:

  • value (Int): число, которое нужно обернуть в формат опционала

Возвращает: строку в формате Optional(value), где value — переданное число.

Пример: Если входное значение — 100, верни "Optional(100)"

Попробуйте сами

func createOptional(value: Int) -> String {
    // Верните String, который выглядит как optional, но не является настоящим optional
    // Вставьте число между скобками с помощью интерполяции строк
    return "Optional()"
}
quiz iconПроверьте себя

В этом уроке есть небольшой тест. Начните урок, чтобы ответить на вопросы и сохранить прогресс.

Все уроки раздела Основы

Потренируйтесь самостоятельно: Песочница Swift