An optional can hold a value or hold nil when no value is available.

Store a value or nil

optional_values.swift
let nickname: String? = 
let hasNickname = nickname != nil
let display = String(describing: nickname)

print("hasNickname=\(hasNickname)")
print("display=\(display)")
let nickname: String? = 
let hasNickname = nickname != nil
let display = String(describing: nickname)

print("hasNickname=\(hasNickname)")
print("display=\(display)")
let nickname: String? = 
let hasNickname = nickname != nil
let display = String(describing: nickname)

print("hasNickname=\(hasNickname)")
print("display=\(display)")
optionals Use an optional type such as `String?` when a variable may have no value. Compare with `nil` before relying on the value.