Junior — Middle
Como determinar o tipo correto de chave para usar num dicionário?
sobes.tech IA
Resposta da IA
No iOS (Swift), a chave para um dicionário deve cumprir o protocolo Hashable. Isso significa que a chave deve ser capaz de calcular um valor hash e ser comparada por igualdade, para que o dicionário possa armazenar e procurar valores de forma eficiente.
Por exemplo, tipos padrão como String, Int, UUID já implementam Hashable e são adequados para uso como chaves.
Se criar um tipo próprio para a chave, deve implementar o protocolo Hashable:
struct User: Hashable {
let id: Int
let name: String
}
var dict: [User: String] = [:]
dict[User(id: 1, name: "Alice")] = "Developer"
Portanto, o tipo correto de chave é aquele que:
- implementa
Hashable; - possui valores únicos para as chaves, para evitar colisões;
- é imutável (é melhor usar estruturas ou propriedades imutáveis).