自动摘要
正在生成中……
import UIKit
let array = [6,3,4,2,9,12]
print(array.map({ (n1:Int)->Int in return n1+1}))
print(array.map({ (n1:Int)->Int in n1+1}))
print(array.map({ n1 in n1+1}))
print(array.map{$0+1})
// 转换成String
print(array.map{"\($0)"})
//转换成新 array
let arrayNew = array.map({"\($0+1)"})
print(arrayNew)
总结:
swift
闭包的基本语法是
{
(参数...)->返回值类型 in
语句xxxooo
}
根据类型推断
可省略参数类型和返回值类型,使用$0,$1,$n
直接引用参数,可省略参数和in
关键字,如果闭包位于是最后一个参数,放在( )
外面,如
func callFun(n1:Int, n2:Int,operation:(Int,Int)->Int)->Int {
return operation(n1,n2)
}
//调用可简化为
print(callFun(n1:1,n2:2){$0+$1})
在最上面的例子中由于map
只有一个参数,所以可以将map
后面的( )
省略掉。