Junior — Middle
Uma coleção Set pode conter elementos de qualquer tipo de dado ou há restrições de tipo?
sobes.tech IA
Resposta da IA
Em Swift, a coleção Set pode conter elementos de qualquer tipo que cumpra o protocolo Hashable. Isto significa que os tipos devem ser capazes de calcular um código hash para garantir a unicidade dos elementos no Set.
Exemplos de tipos permitidos:
- Tipos padrão, como Int, String, Double — eles já cumprem Hashable.
- Estruturas ou classes personalizadas, se implementarem o protocolo Hashable.
Exemplo de estrutura personalizada adequada para Set:
struct Person: Hashable {
let id: Int
let name: String
}
var peopleSet: Set<Person> = []
peopleSet.insert(Person(id: 1, name: "Иван"))
Se um tipo não cumprir Hashable, não pode ser usado em um Set.