Swift 5 闭包Closure简明教程
系统: Mac OS 10.15.2, XCode 11.3,swift 5.0 写作时间:2020-01-09 说明 Swift中的闭包(Closure) ,闭包的地位等同于OC中的Block! Objc 闭包的写法 void ( ^ printBlock ) ( NSString * x ) ; printBlock = ^ ( NSString * str ) { NSLog ( @ "print:%@" , str ) ; } ; printBlock ( @ "hello world!" ) ; Swift 闭包 的写法 // 定义语法 //{ // (参数列表) ->返回值类型 in // 语句组 //} // 声明一个闭包(有两个整形参数,且返回值为整形的闭包) var sumClosure : ( ( a : Int , b : Int ) - > Int ) // 实现闭包 sumClosure = { ( a : Int , b : Int ) - > Int in return a + b } // 调用 let sum = sumClosure ( a : 10 , b : 20 ) print ( sum ) Swift 闭包重定义 // 有参数无返回值的 typealias Myclosure1 = ( str : String ) - > Void /