3 回答
TA贡献1831条经验 获得超10个赞
是的,Swift Set上课了。
let array1 = ["a", "b", "c"]
let array2 = ["a", "b", "d"]
let set1:Set<String> = Set(array1)
let set2:Set<String> = Set(array2)
Swift 3.0+可以对集合执行以下操作:
firstSet.union(secondSet)// Union of two sets
firstSet.intersection(secondSet)// Intersection of two sets
firstSet.symmetricDifference(secondSet)// exclusiveOr
Swift 2.0可以计算数组参数:
set1.union(array2) // {"a", "b", "c", "d"}
set1.intersect(array2) // {"a", "b"}
set1.subtract(array2) // {"c"}
set1.exclusiveOr(array2) // {"c", "d"}
Swift 1.2+可以根据设置进行计算:
set1.union(set2) // {"a", "b", "c", "d"}
set1.intersect(set2) // {"a", "b"}
set1.subtract(set2) // {"c"}
set1.exclusiveOr(set2) // {"c", "d"}
如果使用自定义结构,则需要实现Hashable。
感谢Michael Stern在Swift 2.0更新的评论中。
感谢Amjad Husseini在有关Hashable信息的评论中。
- 3 回答
- 0 关注
- 868 浏览
添加回答
举报