Sobes.tech
Junior — Middle

Comment déterminer quels objets peuvent être ajoutés à une structure de données de type dictionnaire?

sobes.tech IA

Réponse de l'IA

В iOS (Swift) для использования объекта в качестве ключа в словаре (Dictionary) он должен соответствовать протоколу Hashable. Это означает, что объект должен иметь уникальный хэш-код и уметь сравниваться на равенство.

Например, стандартные типы, такие как String, Int, UUID уже соответствуют Hashable и могут быть ключами словаря. Пользовательские типы нужно явно сделать Hashable:

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

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

Если объект не соответствует Hashable, его нельзя использовать в качестве ключа словаря. Значения словаря могут быть любыми типами.