美文网首页
Swift 函数学习笔记

Swift 函数学习笔记

作者: 摘心 | 来源:发表于2019-08-13 13:29 被阅读0次
  1. sorted 排序函数
let array = [1,2,3,4,5,6]
do {
    // 降序排序
    let arr1 = array.sorted { (a, b) -> Bool in
        return a > b
    }
    print(arr1)
    
    // 升序排序
    let arr2 = arr1.sorted { (a, b) -> Bool in
        return a < b
    }
    print(arr2)
    // sorted()升序排序
    print(arr1.sorted())
}
  1. map遍历集合元素
     // 遍历数组,每个元素组成元组类型,遍历执行结果返回泛型T,并组合成新的数组mapArr1
    let mapArr1 = array.map { (<#Int#>) -> T in
        <#code#>
    }
    // 遍历字典, 每个键值对组成元组类型,遍历执行结果返回泛型T,并组合成新的数组mapArr2
    let mapArr2 = dic.map { (<#(key: String, value: String)#>) -> T in
        <#code#>
    }
    // 简洁写法,$0 $1 分别为元组的第一、二个元素
    let mapArr3 = dic.map {
        print("key : \($0), value : \($1)")
    }
  1. filter过滤集合
    // 过滤数组,遍历每个元素,返回符合要求的元素组成新数组
    let newArr = array.filter { (<#Int#>) -> Bool in
        <#code#>
    }
   // 过滤字典,遍历每个键值对,返回符合要求的键值对组成新字典
    let newDic = dic.filter { (<#(key: String, value: String)#>) -> Bool in
        <#code#>
    }
  1. reduce 遍历集合,计算元素
    // Result 计算结果容器,有初始值
    // (<#Result#>, <#Int#>)  遍历元素元组,有容器和数组元素组成
    // 遍历结束返回结果,返回类型由Result决定
    let reduce = array.reduce(Result) { (<#Result#>, <#Int#>) -> Result in
        <#code#>
    }

    // 与reduce数组类似
    let reduce = dic.reduce(Result) { (<#Result#>, <#(key: String, value: String)#>) -> Result in
        <#code#>
    }
   //  例:
    let reduce = dic.reduce("reduce :") { (a, arg1) -> String in
        let (key, value) = arg1
        return a + key + value
    }
    print(reduce)
  1. reversed() 、enumerated()
do {
    let array = [1,3,2,7,6,8,9,5]
    // reversed 反向,让数组元素顺序颠倒
    let reversedArr = array.reversed()
    print("reversedArr = \(Array(reversedArr))")
    
    let enumeratedArr = array.enumerated()
    print("enumeratedArr = \(Array(enumeratedArr))")
    // enumerated 获取数组的下标和下标对应元素组成的元组
    for (n,value) in array.enumerated() {
        print("array enumerated n = \(n) , value = \(value) ")
    }
    
    let dic = ["name":"Ares", "num":"25", "id":"1024"]
    // 让字典元素反向,没有实际意义
    let reversedDic:Array<Any> = dic.reversed()
    print("dic = \(dic) \n reversedDic = \(reversedDic) ")
    for (n, value) in dic.enumerated() {
        print(value.key)
        print("dic enumerated n = \(n), value = \(value)")
    }
}

相关文章

  • swift学习笔记②

    Swift学习笔记 - 文集 语法篇 一、函数 函数定义 Swift 定义函数使用关键字 func,functio...

  • Swift学习笔记

    swift学习笔记01: “一等公民“ func & closure 先来几个函数: 在swift中,我们可以这样...

  • Swift学习笔记①

    Swift学习笔记①Swift学习笔记①

  • swift学习笔记 ⑥ —— 闭包

    Swift学习笔记 - 文集 闭包,就是能够读取其他函数内部变量的函数。Swift 中的闭包与 C 和 OC 中的...

  • Swift学习笔记-函数

    最简单的函数 带参数的函数 外部参数 swift中参数名可以填两个,前者是外部参数名(调用者使用),后者是内部参数...

  • Swift学习笔记-函数

    (一)函数 1.如果函数的传入参数不同时,函数名可以是一样的(但是传入参数一样,返回值不一样的时候不行?或许某种方...

  • swift学习笔记 函数

    本文章是本人学习 swift 时的笔记,略简单 1、函数的定义与调用: 2、无参数函数 3、无返回值函数 虽说是无...

  • Swift 学习笔记(一)

    swift学习笔记第一篇,主要常量,变量,数据类型,条件判断,循环, 函数等基础知识的汇总 大纲汇总 Swift ...

  • swift002

    有来写学习swift的笔记了。。。。 函数的默认值 没有返回值的函数 使用常量记录函数 闭包 在OC中block是...

  • Swift4.0 函数(Function)

    针对swift4.0函数做一些笔记。 普通函数,不做过多笔记 可变参数函数 (Variadic Parameter...

网友评论

      本文标题:Swift 函数学习笔记

      本文链接:https://www.haomeiwen.com/subject/dtrvjctx.html