Set是一个无序的集合,我们不能像数组那样通过下标对集合元素进行访问。我们可以通过for-in循环来遍历一个集合。
1 | for str in setStr { 2 | print("\(str)") 3 | } |
我们可以通过集合的只读属性count,计算出集合的长度。
1 | var setStr:Set = ["swift","oc","c"] 2 | print(setStr.count) |
运行结果:3
此外,我们可以通过isEmpty属性来判断集合是否为空。
1 | var setStr:Set = ["swift","oc","c"] 2 | if setStr.isEmpty { 3 | print("set is empty") 4 | } else { 5 | print("集合的长度:\(setStr.count)") 6 | } |
运行结果:集合的长度:3
6.3.3 集合编辑
我们可以对集合中插入、删除元素操作。
1.集合的插入
我们使用insert(:)方法在集合中插入新值。
1 | var setStr:Set = ["swift","oc","c"] 2 | setStr.insert("iOS") 3 | print("setStr:\(setStr)") |
输出结果:
setStr:["iOS", "swift","oc", "c"]
2.集合的删除
通过remove(:)方法删除集合中的某个元素, 因为可能遇到一个集合中没有的元素,所以集合返回的也是该集合类型的可选值。如果集合中有该元素,就会返回该值,如果不存在,就返回nil,使用remoceAll()方法,删除集合的所有元素。示例代码如下:
1 | var setStr:Set = ["swift","oc","c",4,5,6,7] 2 | if let removedSet = setStr.remove("oc") { 3 | print("删除:\(removedSet)") 4 | } else { 5 | print("not remove") 6 | } |
运行结果:
删除:oc
3.集合的包含
通过contains(_:)方法判断一个集合中是否包含某个元素。
1 | var setStr:Set = ["swift","oc","c"] 2 | if setStr.contains("swift") { 3 | print("contains swift") 4 | } else { 5 | print(" not contains swift") 6 | } |
运行结果:
contains swift