tl;dr:Optional chaining is used to manipulate an optional in a few ways, including "setting and retrieving the value of a property of the wrapped instance, setting and retrieving a value from a subscript on the wrapped instance, and calling a method on the wrapped instance." Khawer dives into how it works.