Sobes.tech
Junior — Middle

Lehetséges az Optional típusú objektumok összehasonlítása a kódban?

sobes.tech MI

Válasz az MI-től

Swiftben az Optional típusú objektumokat össze lehet hasonlítani, ha az általuk tartalmazott típus támogatja az összehasonlítást. Például, ha van egy Optional<Int>, akkor az == és != operátorokat használhatod az összehasonlításhoz.

Az összehasonlítás így működik:

  • Ha mindkét érték nil, akkor egyenlőnek számítanak.
  • Ha az egyik nil, a másik nem, akkor nem egyenlőek.
  • Ha egyik sem nil, akkor a belső értékeket hasonlítják össze.

Példa:

let a: Int? = 5
let b: Int? = 5
let c: Int? = nil

print(a == b) // true
print(a == c) // false
print(c == nil) // true

Ha a típus nem támogatja az összehasonlítást, akkor nem lehet közvetlenül összehasonlítani az adott típusú Optional-t.