Введение в перечисления в Dart
Перечисление в Dart задает закрытый список именованных значений одного типа. Новые пункты в этот список из кода не добавляют: состав фиксирован при объявлении.
Такой тип удобен, когда переменная может принимать лишь несколько заранее известных состояний. Вместо отдельных строк или чисел программа опирается на короткие имена внутри одного набора.
Каждое значение перечисления существует в единственном экземпляре. Обращение идет через имя типа и точку, как к полю, без создания объектов вручную.
Отдельно разберут объявление, сравнение двух значений, выбор команды по значению, текстовое имя и порядковый номер в списке.