Swift的集合(附实例)

166 阅读1分钟

本教程属于Swift系列

集合用于创建不重复的项目的集合。

虽然一个数组可以包含多次相同的项目,但在一个集合中你只能有唯一的项目。

你可以用这种方式声明一个Int值的集合。

let set: Set<Int> = [1, 2, 3]

或者你可以从一个数组初始化它。

let set = Set([1, 2, 3])

使用insert() ,将项目添加到该集合中。

var set = Set([1, 2, 3])
set.insert(17)

与数组不同,在一个集合中没有顺序或位置。项目是随机检索和插入的。

打印一个集合的有序内容的方法是使用sorted() 方法将其转化为一个数组。

var set = Set([2, 1, 3])
let orderedList = set.sorted()

要检查一个集合是否包含一个元素,使用contains() 方法。

var set = Set([1, 2, 3])
set.contains(2) //true

要获得集合中的项目数,使用count 属性。

let set = Set([1, 2, 3])
set.count //3

如果一个集合是空的,它的isEmpty 属性是true

let set = Set([1, 2, 3])
set.isEmpty //false

要从数组中删除一个项目,使用remove() ,并传递该元素的值。

var set = Set([1, 2, 3])
set.remove(1)
//set is [2, 3]

要从集合中删除所有项目,可以使用removeAll()。

set.removeAll()

集合,像数组一样,是按值传递的,这意味着如果你把一个数组传递给一个函数,或者从一个函数中返回,集合就被复制了。

集合是执行集合数学运算的好帮手,比如相交、联合、减法等等。

这些方法对此有所帮助。

  • intersection(_:)
  • symmetricDifference(_:)
  • union(_:)
  • subtracting(_:)
  • isSubset(of:)
  • isSuperset(of:)
  • isStrictSubset(of:)
  • isStrictSuperset(of:)
  • isDisjoint(with:)

集合是一个集合,它们可以在循环中进行迭代。