Optional chaining & error handling basics
Use optional chaining, guard patterns, try?/try!, and do/catch to handle absence and errors. Learn Result as an alternative.
Intro
This lesson links Optionals with error handling. Explore chaining, guard patterns, try?/try!, and Result.
Optional chaining
Optional chaining (a?.b?.c) stops and returns nil if any link is nil.
struct User { var address: Address? }
struct Address { var city: String }
let u: User? = User(address: Address(city: "Paris"))
print(u?.address?.city) // Optional("Paris")All lessons in this course
- Optional chaining & error handling basics
- do/catch & defining errors (enums)
- Result types — Result