您的位置:首页 > 移动开发 > Swift

[ios] Swift Closure(闭包)

2015-08-07 16:00 567 查看
———————Closure闭包————————–

Closure 类似于之前oc的Blocks , 还有c语言的函数指针

var arr = [20,9,39,39,46]
//(num:Int,value:Int)->Bool is the Closure type, cb的类型
func hasClosureMatch(arr:[Int], value:Int, cb:(num:Int,value:Int)->Bool) ->Bool{
for item in arr{
if(cb(num: item, value: value))){
return true
}
}
return false
}


//总结一下 Closure , func closure (num:Int , value:Int) -> Bool

var v1 = hasClosureMatch(arr, 40, {(num:Int,value:Int) -> Bool in return
num >= value
})

var v2 = hasClosureMatch(arr, 40, {(num:Int,value:Int) -> Bool in return
num <= value
})

var v3 = hasClosureMatch(arr, 40,{
//没有写类型 (num:Int,value:Int) -> Bool
// 这里 $0 表示num  $1 表示value
return $0 < $1
})
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  swift ios