swift集合set介绍和使用 – Swift最新教程

上一章Swift教程请查看:swift数组使用
Swift集合用于存储相同类型的不同值,但它们不像数组那样有明确的顺序。
如果元素的顺序不是问题,或者希望确保没有重复的值,可以使用集合而不是数组。(集合只允许不同的值)
一个类型必须是可散列化的,才能存储在一个集合中,例如,如果x == y,则x.hashvalue = http://www.srcmini.com/= y.hashvalue,表示它们的散列值相等。
所有基本的swift值在默认情况下都是hashable类型的,可以作为设置值使用。
创建集合可以使用以下初始化器语法创建某个类型的空集

var someSet = Set< Character>()//可以用set集合的数据类型替换字符。

访问和修改集合你可以使用它的方法和属性访问或修改一个集合
“count”方法可以用来显示集合中元素的数量。
someSet.count// 打印元素的数量

“insert”方法可用于在集合中插入值。
someSet.insert("c")// 插入一个值到集合分钟

类似地,isEmpty可用于检查set是否为空。
someSet.isEmpty// 根据集合元素返回true或false。

“remove”方法可用于删除集合中的值。
someSet.remove("c")// 删除一个元素,可以使用removeAll()删除所有元素

“contains”方法可用于检查集合中是否存在值。
someSet.contains("c")// 检查set是否包含此值。

遍历一个集合可以使用for-in循环遍历一个集合:
for items in someSet { print(someSet) } // Swift的集合不是以一种有序的方式,而是以一种有序的方式在集合上迭代使用 for items in someSet.sorted() { print(someSet) }

执行集合操作可以在swift集和上执行一些基本的集合操作。
【swift集合set介绍和使用 – Swift最新教程】下面是执行集合操作的方法:
  • 交集
  • 并集
  • 差集
let evens: Set = [10,12,14,16,18] let odds: Set = [5,7,9,11,13] let primes = [2,3,5,7] odds.union(evens).sorted() // [5,7,9,10,11,12,13,14,16,18] odds.intersection(evens).sorted() //[] odds.subtracting(primes).sorted() //[9, 11, 13]

    推荐阅读