Sobes.tech
Junior — Middle

¿Cómo determinar qué objetos pueden ser añadidos a una estructura de datos de tipo diccionario?

sobes.tech AI

Respuesta de la IA

En iOS (Swift), para usar un objeto como clave en un diccionario, debe cumplir con el protocolo Hashable. Esto significa que el objeto debe tener un código hash único y poder compararse por igualdad.

Por ejemplo, tipos estándar como String, Int, UUID ya cumplen con Hashable y pueden ser claves de diccionario. Los tipos personalizados deben hacerse explícitamente Hashable:

struct Person: Hashable {
    let id: Int
    let name: String
}

let dict: [Person: String] = [Person(id: 1, name: "Alice"): "Developer"]

Si un objeto no cumple con Hashable, no puede usarse como clave en un diccionario. Los valores del diccionario pueden ser de cualquier tipo.