基本Set操作
基本Set操作
- intersection(:) 交集,属于 A 且属于 B 的相同元素组成的集合(A交B)
- union(:) 并集,由所有属于 A 或者属于 B 的元素组成的集合(A并B)
- symmetricDifference(_:) 对称差集,集合 A 与集合 B 的对称差集定义为集合 A 与集合 B 中所有不属于 A 与 B 交集的元素的集合
- subtracting(_:) 相对补集,由属于 A 而不属于 B 的元素组成的集合,称为 B 关于 A 的相对补集,记作 A- B 或者 A\B
基本 Set 操作
let set:Set<Character> = ["A", "B", "C"]
let set2:Set<Character> = ["B", "E", "F", "G"]
print(set.intersection(set2))
print(set.union(set2))
print(set.symmetricDifference(set2))
print(set.subtracting(set2))
执行结果如下:
["B"]
["E", "B", "G", "A", "F", "C"]
["E", "G", "A", "F", "C"]
["A", "C"]
Set 判断方法
- isSubset(of:) 判断是否是另一个 Set 或者 Sequence 的子集
- isSuperset(of:) 判断是否是另一个 Set 或者 Sequence 的超集
- isStrictSubset(of:) 和 isStrictSuperset(of:) 判断是否是另一个 Set 的子集或者超集,但是又不等于另一个 Set
- isDisjoint(with:) 判断两个 Set 是否有公共元素,如果没有返回true,如果有返回false
let smallSet:Set = [1, 2, 3]
let bigSet:Set = [1, 2, 3, 4]
print(smallSet.isSubset(of: bigSet))
print(bigSet.isSuperset(of: smallSet))
print(smallSet.isStrictSubset(of: bigSet))
print(bigSet.isStrictSuperset(of: smallSet))
print(smallSet.isDisjoint(with: bigSet))
执行结果如下:
true
true
true
true
false
网友评论