Sobes.tech
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 nil a 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.