Swift快速入门(七)

87 阅读1分钟

集合

集合的初始化
print("-------------集合的初始化-------------")

let a : Set = [1,2,3,4]

print("a = \(a) ")//集合是无序的

let b : Set<String> = ["Hello","World"]

print("b =\(b)")

let c : Set<Int> = []

print("c =\(c)")
过滤集合
var s3: Set= ["A","B","C","D"]

var newS3 = s3.filter({(item) ->Bool in

  return item != "B" //过滤掉“B”**

 }) 

print("过滤集合 newS3 = \(newS3)")
遍历集合
for item in s3{

  print("遍历集合 = \(item)")

}
集合的常用方法
print("-------------集合的常用操作-------------")

var setA: Set = ["Hello","World","Swift","C"]

print("获取集合的长度 =\(setA.count)")

setA.insert("Object-C")

print("集合插入新数据 = \(setA)")

let d = setA.contains("Swift")

print("判断集合是否包含指定的元素 = \(d)")

setA.remove("Swift")

print("删除集合某个指定的元素 = \(setA)")

let data:Set = ["JS","HTML","C++","C"]

let newSet = setA.union(data)

print("合并集合 = \(newSet)")

let sameData = setA.intersection(data)

print("两个集合相同的数据 = \(sameData)")

let diffData = setA.symmetricDifference(data)

print("两个集合不同的数据 = \(diffData)")

let diffData2 = data.subtracting(setA)

print("返回data和setA不同的数据 = \(diffData2)")//返回的是和data不同的数据,不是setA

let smallSet:Set = [1,2,3]
let bigSet: Set = [1,2,3,4,5]

//isSubset(of:) 判断是否是另一个 Set 或者 Sequence 的子集。
print(smallSet.isSubset(of: bigSet))

//isSuperset(of:) 判断是否是另一个 Set 或者 Sequence 的超集。
print(bigSet.isSuperset(of: smallSet))

//isStrictSubset(of:) 和 isStrictSuperset(of:) 判断是否是另一个 Set 的子集或者超集,但是又不等于另一个 Set 。
print(smallSet.isStrictSubset(of: bigSet))
print(bigSet.isStrictSuperset(of: smallSet))

//isDisjoint(with:) 判断两个 Set 是否有公共元素,如果没有返回 true,如果有返回 false
print(smallSet.isDisjoint(with: bigSet))