Junior — Middle
Може ли у коду вршити поређење објеката типа Optional?
sobes.tech АИ
Одговор од АИ
U Swift-u, objekti tipa Optional mogu se porediti ako tip koji sadrže podržava poređenje. Na primer, ako imate Optional<Int>, možete koristiti operatore == i != za poređenje.
Poređenje funkcioniše na sledeći način:
- Ako su obe vrednosti
nil, smatraju se jednakim. - Ako je jedna
nil, a druga nije, nisu jednake. - Ako nijedna nije
nil, porede se unutrašnje vrednosti.
Primer:
let a: Int? = 5
let b: Int? = 5
let c: Int? = nil
print(a == b) // true
print(a == c) // false
print(c == nil) // true
Ako tip ne podržava poređenje, nije moguće direktno poređenje Optional tog tipa.