Sobes.tech
Junior — Middle

È possibile utilizzare il proprio tipo di dato come chiave per un dizionario o una tabella hash?

sobes.tech AI

Risposta dell'AI

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

Пример:

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

var dict: [Person: String] = [:]
dict[Person(id: 1, name: "Иван")] = "Разработчик"

Если ваш тип не соответствует Hashable, то его нельзя использовать в качестве ключа словаря.