• Set


    //Set是无序的 Array是有序的

     

    //初始化

    var letters = Set<Character>()

     

    //插入 跟数组一样 只能添加同种类型的

    letters.insert("a")

     

     

    //清空

    letters = []

     

     

     

    var setA:Set<String> = ["av","yes"]

    var setB:Set = ["sb","no"]

     

    //判断空值

    if setA.isEmpty {

        

    }

     

     

    //元素是合集的成员就移除它,并且返回移除的值,如果合集没有这个成员就返回 nil

    let av = setA.remove("av")

     

     

    //要检查合集是否包含了特定的元素

    let iso:Bool = setB.contains("sb")

     

     

    //循环遍历

    for str in setB

    {

        print(str)

    }

     

    //Swift Set类型是无序的。要以特定的顺序遍历合集的值,使用 sorted()方法,它把合集的元素作为使用 < 运算符排序了的数组返回。

    for str in setB.sorted()

    {

        print(str)

    }

     

     

     

    var setC:Set = ["a","b","c"]

    var setD:Set = ["c","d","e"]

     

     

     

    //创建一个只包含两个合集共有值的新合集 (加上sored有顺序 不加没有顺序)

    var setBoth = setC.intersection(setD).sorted()

     

     

     

    //创建一个只包含两个合集各自有的非共有值的新合集

    var setOther = setC.symmetricDifference(setD).sorted()

     

     

    //创建一个包含两个合集所有值的新合集

    var setAll = setC.union(setD).sorted()

     

    //创建一个两个合集当中不包含某个合集值的新合集。

    var setNot = setC.subtracting(setD).sorted()

     

     

    print("(setNot),(setC),(setD)")

     

     

    var setE:Set = ["f","g"]

     

    //相等运算符 ( == )来判断两个合集是否包含有相同的值

    if setD == setC{

        

    }

     

    //确定一个合集的所有值是被某合集包含

    if setE.isSubset(of: setC)

    {

        

    }

     

    //确定一个合集是否包含某个合集的所有值

    if setC.isSuperset(of: setE){

        

    }

     

    //来判断两个合集是否拥有相同的值

    if setC.isDisjoint(with: setD){

        

    }

     

     

  • 相关阅读:
    java静态工厂实例
    有道云词典+浏览器开PDF文档=科研者外文阅读福利
    高并发实时性网络视频监控项目实战
    Linux环境下天气预报实现
    2019暑假内容复习
    《分布式与云计算》MOOC第三单元课后测试答案
    安装vivado 2016.1时出错
    N皇后问题的一种解法
    window10下基于anaconda安装tensorflow1.14(cpu版本)
    记一次简单的生产环境Mysql调优
  • 原文地址:https://www.cnblogs.com/slc-lover/p/5653140.html
Copyright © 2020-2023  润新知