Sobes.tech
Junior — Middle

Wie bestimmt man, welche Objekte zu einer Dictionary-Datenstruktur hinzugefügt werden können?

sobes.tech KI

Antwort von AI

В 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, его нельзя использовать в качестве ключа словаря. Значения словаря могут быть любыми типами.