You’ve made it to the end of the tenth part of this series, so let’s summarize:
- Optionals let us represent the absence of a value in a clear and unambiguous way.
- Swift won’t let us use optionals without unwrapping them, either using
if let or using
- You can force unwrap optionals with an exclamation mark, but if you try to force unwrap
nil your code will crash.
- Implicitly unwrapped optionals don’t have the safety checks of regular optionals.
- You can use nil coalescing to unwrap an optional and provide a default value if there was nothing inside.
- Optional chaining lets us write code to manipulate an optional, but if the optional turns out to be empty the code is ignored.
- You can use
try? to convert a throwing function into an optional return value, or
try! to crash if an error is thrown.
- If you need your initializer to fail when it’s given bad input, use
init?() to make a failable initializer.
- You can use typecasting to convert one type of object to another.
Want to build macOS apps?
Hacking with macOS delivers 18 awesome projects that teach you macOS development in no time – take control of your desktop today!