Swift Enumerations
This tutorial belongs to the Swift series
Enumerations are a way to group a set of different options, under a common name.
Example:
enum Animal {
case dog
case cat
case mouse
case horse
}
This Animal
enum is now a type.
A type whose value can only be one of the cases listed.
If you define a variable of type Animal
:
var animal: Animal
you can later decide which value to assign it using this syntax:
var animal: Animal
animal = .dog
We can use enumerations in control structures like switches:
enum Animal {
case dog
case cat
case mouse
case horse
}
let animal = Animal.dog
switch animal {
case .dog: print("dog")
case .cat: print("cat")
default: print("another animal")
}
Enumerations values can be strings, characters or numbers.
You can also define an enum on a single line:
enum Animal {
case dog, cat, mouse, horse
}
And you can also add type declaration to the enumeration, and each case has a value of that type assigned:
enum Animal: Int {
case dog = 1
case cat = 2
case mouse = 3
case horse = 4
}
Once you have a variable, you can get this value using its rawValue
property:
enum Animal: Int {
case dog = 1
case cat = 2
case mouse = 3
case horse = 4
}
var animal: Animal
animal = .dog
animal.rawValue //1
Enumerations are a value type. This means they are copied when passed to a function, or when returned from a function. And when we assign a variable pointing to an enumeration to another variable.
→ I wrote 17 books to help you become a better developer, download them all at $0 cost by joining my newsletter
→ JOIN MY CODING BOOTCAMP, an amazing cohort course that will be a huge step up in your coding career - covering React, Next.js - next edition February 2025