If let
If let is used with optionals.
If let-else
func greet(name: String?) {
if let name {
print("Hello \(name)!")
} else {
print("Hello guest!")
}
}
greet(name: "Asma") // Hello Asma!
greet(name: nil) // Hello guest!
Nil-coalescing equivalent
func greet(name: String?) {
let unwrappedName = name ?? "guest"
print("Hello \(unwrappedName)!")
}
greet(name: "Asma") // Hello Asma!
greet(name: nil) // Hello guest!
if let name is shorthand for if let name = name: it unwraps the optional into a constant of the same name. The unwrapped value can also be given a different name, as in if let unwrappedName = name.