Sobes.tech
Junior — Middle

¿Se puede usar una estructura de datos compleja como clave en un diccionario?

sobes.tech AI

Respuesta de la IA

En los diccionarios (Dictionary) en iOS (Swift), las claves solo pueden ser de tipos que cumplen con el protocolo Hashable. Esto significa que una estructura de datos compleja puede ser una clave si implementa el hash y la comparación de igualdad.

Por ejemplo, si tienes una estructura:

struct Point: Hashable {
    let x: Int
    let y: Int
}

puedes usar Point como clave en un diccionario:

var dict: [Point: String] = [:]
dict[Point(x: 1, y: 2)] = "Punto A"

Si la estructura no cumple con Hashable, no se puede usar como clave. En ese caso, debes agregar la conformidad al protocolo o usar otro tipo de clave.