Sobes.tech
Junior — Middle

É possível realizar comparação de objetos do tipo Optional no código?

sobes.tech IA

Resposta da IA

Em Swift, objetos do tipo Optional podem ser comparados entre si, se o tipo que eles envolvem suportar comparação. Por exemplo, se tiver um Optional<Int>, pode usar os operadores == e != para compará-los.

A comparação funciona assim:

  • Se ambos os valores forem nil, são considerados iguais.
  • Se um for nil e o outro não, não são iguais.
  • Se ambos não forem nil, os valores internos são comparados.

Exemplo:

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

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

Se o tipo não suportar comparação, não é possível comparar diretamente um Optional desse tipo.