第六章:函数(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讲了一些具体案例。复制代码