Optional je typ, který buď obsahuje hodnotu, nebo obsahuje nil (žádnou hodnotu). Swift dělá nil explicitní v typovém systému: String nikdy nemůže být nil, ale String? ano. Právě takto Swift eliminuje většinu pádů kvůli null pointeru už při kompilaci.
