Junior — Middle
Lze v kódu provádět porovnání objektů typu Optional?
sobes.tech AI
Odpověď od AI
Ve Swiftu lze objekty typu Optional porovnávat mezi sebou, pokud typ, který obsahují, podporuje porovnání. Například pokud máte Optional<Int>, můžete použít operátory == a != k jejich porovnání.
Porovnání funguje takto:
- Pokud jsou obě hodnoty
nil, považují se za rovné. - Pokud je jeden
nila druhý ne, nejsou rovné. - Pokud žádný není
nil, porovnávají se vnitřní hodnoty.
Příklad:
let a: Int? = 5
let b: Int? = 5
let c: Int? = nil
print(a == b) // true
print(a == c) // false
print(c == nil) // true
Pokud typ nepodporuje porovnání, nelze přímo porovnávat Optional tohoto typu.