美文网首页
[swift 进阶]读书笔记-第六章:函数 C6P1函数的灵活

[swift 进阶]读书笔记-第六章:函数 C6P1函数的灵活

作者: liaoworkinn | 来源:发表于2019-01-10 13:34 被阅读4次

第六章:函数(function)

6.1 函数的灵活性(The flexibility of function)

注:本节前部分主要通过一个排序的demo来介绍了函数的灵活性

话不多说,直接上代码

    var mArray = [3, 1, 2]
    mArray.sort() ///1 2 3
    mArray.sort(by: >)  ///3 2 1
    
    
    
    let animal = ["fish", "dog", "elephant"]
    ///反向比较字符串的大小  我们可以嵌套任意的比较函数  让排序功能更强大!
    let okAnimal = animal.sorted { (lhs, rhs) -> Bool in
        let l = lhs.reversed()
        let r = rhs.reversed()
            ///按顺序比较两个字符串的大小   abc > abb 返回值是一个Bool 
        return l.lexicographicallyPrecedes(r)
    }
    print(okAnimal)
注: String的lexicographicallyPrecedes方法在项目中挺实用的,像比较时间字符串"2018-08-08" 和 "2018-03-04" 的时间先后就可以用这个方法。

函数作为数据

本节主要是通过几个排序的demo讲了一些具体案例。
知识点:swift中的排序算法是基于内省算法(introsort),起实质是快排和堆排的混合。 当集合很小时会转化为插入排序。避免不必要的性能消耗。

文章源文件地址

相关文章

  • [swift 进阶]读书笔记-第六章:函数 C6P1函数的灵活

    第六章:函数(function) 6.1 函数的灵活性(The flexibility of function) ...

  • [ Swift 进阶]之 函数函数的灵活性 读书笔记

    Objective-C VSSwift的排序方式。 学习目的:如何将函数作为参数使用,并且将函数当作数据,以完全类...

  • Swift3之函数(二)

    Swift3之函数(一) 进阶部分 1.函数参数 -- 外部参数名 2.下滑线 -- _ 3.函数参数 -- 设置...

  • 函数式Swift3 - Map,Reduce和Filter

    本文是一个系列,是函数式Swift的读书笔记(其实是为了备忘) 接受其它函数作为参数的函数有时被称为高阶函数。在 ...

  • python 函数进阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • python 函数进阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • Python函数高阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • 17 函数进阶

    函数进阶 目标 函数参数和返回值的作用 函数的返回值 进阶 函数的参数 进阶 递归函数 01. 函数参数和返回值的...

  • 6、【Swift】函数

    函数是一段完成特定任务的独立代码片段 Swift 函数语法非常的灵活 没有参数名字的 C 风格函数,到复杂的带局部...

  • Swift学习笔记(二)

    Swift函数 Swift函数包含参数类型和返回值类型 函数定义 Swift使用关键字func定义函数。 函数定义...

网友评论

      本文标题:[swift 进阶]读书笔记-第六章:函数 C6P1函数的灵活

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