//Set是无序的 Array是有序的
//初始化
var letters = Set<Character>()
//插入 跟数组一样 只能添加同种类型的
letters.insert("a")
//清空
letters = []
var setA:Set<String> = ["av","yes"]
var setB:Set = ["sb","no"]
//判断空值
if setA.isEmpty {
}
//元素是合集的成员就移除它,并且返回移除的值,如果合集没有这个成员就返回 nil
let av = setA.remove("av")
//要检查合集是否包含了特定的元素
let iso:Bool = setB.contains("sb")
//循环遍历
for str in setB
{
print(str)
}
//Swift 的 Set类型是无序的。要以特定的顺序遍历合集的值,使用 sorted()方法,它把合集的元素作为使用 < 运算符排序了的数组返回。
for str in setB.sorted()
{
print(str)
}
var setC:Set = ["a","b","c"]
var setD:Set = ["c","d","e"]
//创建一个只包含两个合集共有值的新合集 (加上sored有顺序 不加没有顺序)
var setBoth = setC.intersection(setD).sorted()
//创建一个只包含两个合集各自有的非共有值的新合集
var setOther = setC.symmetricDifference(setD).sorted()
//创建一个包含两个合集所有值的新合集
var setAll = setC.union(setD).sorted()
//创建一个两个合集当中不包含某个合集值的新合集。
var setNot = setC.subtracting(setD).sorted()
print("(setNot),(setC),(setD)")
var setE:Set = ["f","g"]
//相等”运算符 ( == )来判断两个合集是否包含有相同的值
if setD == setC{
}
//确定一个合集的所有值是被某合集包含
if setE.isSubset(of: setC)
{
}
//确定一个合集是否包含某个合集的所有值
if setC.isSuperset(of: setE){
}
//来判断两个合集是否拥有相同的值
if setC.isDisjoint(with: setD){
}