Одна из тех тем, которую я долго не мог понять. Вопросы, которые задавал себе. И одно из главных преимуществ, которое я выделил для себя - разграничить количество вариантов для работы и более простое управление потоком. Как мы можем создать перечисление? enum Languages { case java case c++ case swift case objective-c } Мы создали свой тип Languages и перечислили все возможные для него варианты. Теперь давайте создадим один экземпляр. Также обратите внимание, что выше мы всего лишь перечислили возможные варианты, никаких значений внутри они не содержат. let sample : Languages = .java мы создали экземпляр который относится к типу перечисления Languages и имеет кейс .java. ----> К нужному варианту мы обращаемся через точку. Давайте создадим перечисление со значениями внутри. enum Notes : Int { case thousand = 1000 case hundred = 100 case fifty = 50 } Мы создали перечисление Notes с значениями внутри каждого кейса. Во время создания мы указали, что наше перечисление относится к типу Int