Sobes.tech
Junior — Middle

Comment déterminer le bon type de clé à utiliser dans un dictionnaire?

sobes.tech IA

Réponse de l'IA

Dans iOS (Swift), la clé pour un dictionnaire doit respecter le protocole Hashable. Cela signifie que la clé doit pouvoir calculer une valeur de hachage et être comparée pour l'égalité, afin que le dictionnaire puisse stocker et rechercher efficacement les valeurs.

Par exemple, des types standard comme String, Int, UUID implémentent déjà Hashable et conviennent comme clés.

Si vous créez un type personnalisé pour la clé, vous devez implémenter le protocole Hashable:

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

var dict: [User: String] = [:]
dict[User(id: 1, name: "Alice")] = "Developer"

Ainsi, le type de clé correct est celui qui:

  • implémente Hashable;
  • possède des valeurs uniques pour les clés, afin d'éviter les collisions;
  • est immuable (il est préférable d'utiliser des structures ou des propriétés immuables).