Dart Academy · Урок

Полный switch по перечислениям

Обработка каждого варианта, проверяемого компилятором

Урок 4 из 413 шагов

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

Оператор выбора любит перечисления

Когда значение выбирается из нескольких вариантов, оператор выбора аккуратно обрабатывает каждый случай. Перечисления и оператор выбора отлично сочетаются.

Простой оператор выбора

Перечислите по одному варианту для каждого члена перечисления и код, который должен выполниться. Язык сопоставит значение с вариантом и выполнит соответствующую ветвь.

switch (status) {
  case Status.pending: print("Waiting");
}

Полнота означает обработку каждого варианта

Для перечисления язык проверяет, обработали ли Вы каждый член. Пропустите один — и анализатор предупредит Вас ещё до запуска.

Почему полнота полезна

Это отличная страховка: если позже добавить новый член перечисления, компилятор укажет на каждый оператор выбора, который нужно обновить.

Выражение выбора

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

var label = switch (status) {
  Status.pending => "Waiting",
};

Стрелочные варианты короче

В выражении выбора каждый вариант записывается как значение-вариант => результат. Запятые разделяют варианты, превращая их в компактную таблицу соответствий.

Status.shipped => "On the way",

В языке нет проваливания вариантов

В отличие от некоторых языков, варианты не проваливаются в следующий. Каждый вариант выполняет только собственный код, поэтому отдельная команда остановки не нужна.

Универсальный вариант по умолчанию

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

default => "Unknown",

Вариант по умолчанию отключает проверку

Добавление универсального варианта по умолчанию удовлетворяет требованиям оператора выбора, поэтому язык перестаёт предупреждать о пропущенных членах. Используйте его умеренно.

Общий блок кода

Позвольте двум членам использовать одну ветвь, перечислив их вместе. Оба выполнят один и тот же код без повторений.

case Status.shipped || Status.delivered: print("Sent");

Полный оператор выбора — полезная привычка

Отсутствие варианта по умолчанию в перечислениях — это возможность, а не обуза. Компилятор превращается в список проверок для будущих изменений.

Быстрая проверка

Что даёт полный оператор выбора для перечисления?

Итоги: полный оператор выбора

Вы увидели, как оператор выбора обрабатывает каждый вариант перечисления, возвращает значения в виде выражения и предупреждает о необработанном члене. Для безопасности пропускайте вариант по умолчанию. 🎯

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

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

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

Курсы
30
Уроки
120

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

Урок «Полный switch по перечислениям» бесплатный?

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

Чему я научусь в уроке «Полный switch по перечислениям»?

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

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

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

Сколько времени занимает урок «Полный switch по перечислениям»?

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

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

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

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

  1. Объявление и использование простых перечислений
  2. Значения перечисления, index и name
  3. Расширенные перечисления с полями и методами
  4. Полный switch по перечислениям
← Назад к Dart Academy