访问Set元素很快,Set类型必须是可清除的。
我认为Swift只存储每个元素的散列值,但是我也可以访问原始值(不是散列)。像这样:
var favoriteGenres: Set<String> = ["Rock", "Classical", "Hip hop"]
for genre in favoriteGenres {
print("\(genre)")
}
输出:
// Jazz
// Hip hop
// Classical
swift store如何在内存中设置类型并访问它?
答案 0 :(得分:0)
你是对的,Swift存储了散列值。
默认情况下,所有Swift的基本类型(如String,Int,Double和Bool)都是可清除的,并且可以用作设置值类型或字典键类型。没有关联值的枚举大小写值(如枚举中所述)在默认情况下也是可以清除的。
如果您存储自己的自定义类型,则必须符合Hashable协议。
您可以将自己的自定义类型用作设置值类型或字典键类型,方法是使它们符合Swift标准库中的Hashable协议。符合Hashable协议的类型必须提供名为hashValue的可获取Int属性。[...]
在文档中,我找不到如何存储Set Types的确切方式,但据我了解Sets
他们访问有关散列值的内容。