Swift3集合訪問

weixin_34292287發表於2017-05-15
3692575-1b9e5d7b4dd0c57d.jpg

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

相關文章