1、创建(Set)集合(无序不可重复)
(1)创建空集合
var a=Set<Int>() //[]
(2)创建集合
var a:Set=[1,2,3] //[2,3,1]
2、集合插入(insert)中间
var a:Set=[1,2,3] a.insert(4) //[2,4,3,1]
3、集合(remove)删除
var a:Set=[1,2,3] a.remove(2) //[3,1]
4、集合(contains)是否有这个元素
var a:Set=[1,2,3] print(a.contains(2)) //true
5、把集合转换(sorted)成数组
var a:Set=[1,2,3] var b=a.sorted() //[1,2,3]
6、集合的特殊应用,子集,父集,交集,并集,补集,差集
(1)交集
let x:Set=[1,2,3] let y:Set=[3,4,5] let z=x.intersection(y) //[3]
(2)差集
var x:Set=[1,2,3] var y:Set=[3,4,5] x.subtract(y) //修改自身x,[2,1]
(3)并集
var x:Set=[1,2,3] var y:Set=[3,4,5] var z=x.union(y) //[3,4,1,5,2]
(4)补集
var x:Set=[1,2,3] var y:Set=[3,4,5] var z=x.symmetricDifference(y) //[5,2,4,1]
(5)判断是否子集
var x:Set=[3,4,5] var y:Set=[3,4,5] var z=x.isSubset(of:y) //x是不是y的子集,true var q=x.isStrictSubset(of:y) //严格子集,false
(6)判断是否是父集
var x:Set=[3,4,5] var y:Set=[3,4,5] var z=x.isSuperset(of:y) //x是不是y的父集,true var q=x.isStrictSuperset(of:y) //严格父集,false
(7)判断是否有交集
var x:Set=[3] var y:Set=[3,4,5] var z=x.isDisjoint(with:y) //false