Swift 闭包又名匿名函数,函数是特殊的闭包。相当于Objective-C中的block
语法格式:
{
(参数) -> 返回值 in
函数体
}
// 使用系统排序函数,说明闭包的省略机制
var numbers = [11,22,44,77,33,66]
var numbersResult = sorted(numbers,{
(n1: Int,n2: Int) -> Bool in
return n1 > n2
})
numbersResult // 调用
// 闭包的参数类型可以省略,return 可以省略
var numbersResult1 = sorted(numbers,{(n1,n2) -> Bool in
n1 > n2
})
numbersResult1 // 调用
// in 前面的语句都可以省略,没有参数名,提供 $0,$1 的参数方式获取
var numbersResult2 = sorted(numbers,{
return $0 > $1
})
numbersResult2 // 调用
// 极简模式
var numberResult3 = sorted(numbers,>)
numberResult3 // 调用
// 尾随闭包
// 如果闭包作为参数列表的最后一个参数,并且实现比较复杂的时候,可放在参数列表的外面,此时称作尾随闭包
var numberResult4 = sorted(numbers){
$0 > $1
}
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。