Sobes.tech
Junior — Middle

Bir Set koleksiyonu herhangi bir veri türündeki öğeleri içerebilir mi yoksa tür kısıtlamaları mı var?

sobes.tech yapay zeka

AI'dan gelen yanıt

Swift'te, Set koleksiyonu, Hashable protokolüne uygun herhangi bir türdeki öğeleri içerebilir. Bu, türlerin, Set içindeki öğelerin benzersizliğini sağlamak için bir hash kodu hesaplayabilmesi gerektiği anlamına gelir.

İzin verilen türlere örnekler:

  • Int, String, Double gibi standart türler — bunlar zaten Hashable ile uyumludur.
  • Özelleştirilmiş yapılar veya sınıflar, eğer Hashable protokolünü uygularlarsa.

Set için uygun olan özelleştirilmiş yapı örneği:

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

var peopleSet: Set<Person> = []
peopleSet.insert(Person(id: 1, name: "Иван"))

Eğer bir tür Hashable değilse, Set'te kullanılamaz.