首页 > 代码库 > Swift3.0 Set

Swift3.0 Set

set的简单的使用方法

 //创建一个空set
        var letters = Set<Character>()
        
        //数组字面量创建set,只能存放string
        var setColors:Set<String> = ["红色","白色","洋红色","黄色"]

 

 //推断存放string类型
        var setColors:Set = ["红色","白色","白色","洋红色","黄色"]
        //获取元素数量 ,set 无序的,且无重复的元素
        print(setColors,setColors.count)
        
        //添加元素
        setColors.insert("黑色")
        print(setColors)
        
        
        //查看set是否包含红色
        if setColors.contains("红色") {
            print("有你想要的")
        }else{
            print("抱歉,还未添加")
        }
        

        //删除元素
        //删除某个元素
        setColors.remove("黑色")
        print(setColors)
        //删除所有元素
        setColors.removeAll()
        print(setColors)
        
        //定义两个set
        let numbers1:Set = [1,2,3,4,5]
        let numbers2:Set = [4,5,6,7,8,]
        
        //进行遍历
        for n in numbers1 {
            print("无序:\(n)")
        }
        
        for n in numbers1.sorted(){
             print("有序:\(n)")
        }
        
        //set之间的操作
        //找出两个set 中相同的元素
        let newSet = numbers1.intersection(numbers2).sorted()
        print(newSet)
        
        //去除相同元素放到一个新的集合中
        let newSet1 = numbers1.symmetricDifference(numbers2.sorted())
        print(newSet1)
        
        //合并两个集合
        let newSet2 = numbers1.union(numbers2.sorted())
        print(newSet2)
        
        //找出numbers1 中 numbers2 不包含的元素
        let newSet3 = numbers1.subtracting(numbers2.sorted())
        print(newSet3)
        
        //集合之间的关系
        let a:Set<Int> = [1,2,3,4,5]
        let b:Set<Int> = [2,3,4]
        let c:Set<Int> = [4,5,6,7,8]
        
        print("b的值是否全部被a包含",b.isSubset(of: a))
        print("a是否包含b所有的值",a.isSuperset(of: b))

        print("a是否为b子集集",a.isStrictSubset(of: b))
        print("a是否为b父集",a.isStrictSuperset(of: b))
        
        print("a与c是否没有交集",a.isDisjoint(with: c))
        

 

Swift3.0 Set