Swift Academy · Урок

Расширенные возможности перечислений

Определяйте перечисления с исходными или связанными значениями, используйте switch для исчерпывающего сопоставления и моделируйте с их помощью состояния.

Урок 1 из 38 шагов

«Расширенные возможности перечислений» — бесплатный урок Swift Academy на CoddyKit. Это урок 1 из 3. Ты можешь прочитать весь урок бесплатно ниже — а потом практиковать его прямо в браузере с встроенным редактором кода и ИИ-репетитором 24/7. Это часть пути обучения Swift Academy, и твой прогресс синхронизируется между веб-версией и приложением CoddyKit. Курс Swift Academy содержит 3 уроков всего.

Введение

Перечисления Swift — это не только простые константы. У них могут быть необработанные значения или связанные значения, а работать с ними можно с помощью исчерпывающих операторов выбора.

Необработанные значения

Необработанные значения назначают постоянное значение каждому варианту, например строку или целое число.

enum Direction: String {
    case north = "N"
    case south = "S"
}
print(Direction.north.rawValue)

Связанные значения

Связанные значения позволяют вариантам хранить дополнительные данные, например имена пользователей или идентификаторы.

enum Login {
    case user(String)
    case guest
}
let l = Login.user("Ada")
print(l)

Сопоставление с шаблоном

Используйте оператор выбора с помощью сопоставления с шаблоном, чтобы извлекать связанные значения.

switch l {
case .user(let name): print("Hello", name)
case .guest: print("Guest access") }

Моделирование состояний

Перечисления моделируют конечные состояния, например состояние подключения, с необязательными данными.

enum Connection {
    case connected
    case disconnected
    case connecting(Int) // progress percent
}
let c = Connection.connecting(50)
print(c)

Советы

Советы:

  • Перечисления исчерпывающие: оператор выбора должен охватывать все варианты.
  • Используйте связанные значения для гибкого хранения данных.
  • Исходные значения — это более простые константы.

Вопрос о данных перечисления

Быстрая проверка: какая возможность позволяет вариантам перечисления хранить дополнительные данные?

Итоги

Итоги: перечисления Swift могут иметь исходные или связанные значения. Используйте оператор выбора с сопоставлением с образцом для исчерпывающего и мощного моделирования состояний.

Можно начать бесплатно

Изучай Swift с ИИ-репетитором — бесплатно

Пиши и запускай код прямо в браузере, получай мгновенную помощь от ИИ-репетитора 24/7 и продолжи учиться на сайте или в приложении.

Курсы
122
Уроки
409

Часто задаваемые вопросы

Урок «Расширенные возможности перечислений» бесплатный?

Да — полный текст урока «Расширенные возможности перечислений» бесплатно доступен здесь в веб-версии. Чтобы практиковать его интерактивно (встроенный редактор кода и ИИ-репетитор 24/7) и разблокировать остальной курс Swift Academy, подпишись на CoddyKit PRO. Курс Swift Academy содержит 3 уроков всего.

Чему я научусь в уроке «Расширенные возможности перечислений»?

Определяйте перечисления с исходными или связанными значениями, используйте switch для исчерпывающего сопоставления и моделируйте с их помощью состояния. Ты практикуешь Swift Academy с помощью реального кода, который запускаешь прямо в браузере, и ИИ-репетитор 24/7 отвечает на твои вопросы во время урока.

Нужен ли мне опыт, чтобы начать Swift Academy?

Предыдущий опыт не требуется. Swift Academy на CoddyKit структурирован для всех уровней — от новичков до продвинутых, поэтому ты можешь начать отсюда или с самого начала и учиться в своем темпе. Это урок 1 из 3.

Сколько времени занимает урок «Расширенные возможности перечислений»?

Большинство уроков CoddyKit занимают около 5–10 минут. Каждый из них компактный и интерактивный, поэтому ты постоянно делаешь прогресс и продолжаешь с того же места в веб-версии и приложении.

Можно ли писать и запускать код в этом уроке Swift Academy?

Да. Каждый урок Swift Academy включает встроенный редактор кода, поэтому ты пишешь и запускаешь реальный код прямо в браузере и получаешь моментальную обратную связь от AI — локальная установка не требуется.

Все уроки этого курса

  1. Расширенные возможности перечислений
  2. Мощный switch с сопоставлением по шаблону
  3. Моделирование конечных состояний
← Назад к Swift Academy