Swift3集合访问
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("containsswift")
4 |} else {
5 |print(" not containsswift")
6 |}
运行结果:
containsswift