swift闭包简洁到变态

来源:互联网 发布:比较好的毕业留言知乎 编辑:程序博客网 时间:2024/05/05 06:42

通过 sort 函数闭包的定义和语法优化,展示相同的功能下的每一次优化的闭包实现。


let names = ["Chris", "Alex", "Ewa", "Barry", "Daniella"]
func backwards(s1: String, s2: String) -> Bool {
    return s1 > s2
}
// 函数式
var reversed = sort(names, backwards)
// reversed 为 ["Ewa", "Daniella", "Chris", "Barry", "Alex"]

// 闭包式
reversed = sort(names, { (s1: String, s2: String) -> Bool in return s1 > s2 } )

reversed = sort(names, { s1, s2 in return s1 > s2 } )
reversed = sort(names, { s1, s2 in s1 > s2 } )
reversed = sort(names, { $0 > $1 } )
reversed = sort(names, >)


0 0
原创粉丝点击