【Swift 60秒】53 - Using closures as parameters when they accept parameters
创始人
2024-02-08 20:59:28

0x00 Lesson

This is where closures can start to be read a bit like line noise: a closure you pass into a function can also accept its own parameters.

We’ve been using () -> Void to mean “accepts no parameters and returns nothing”, but you can go ahead and fill the () with the types of any parameters that your closure should accept.

To demonstrate this, we can write a travel() function that accepts a closure as its only parameter, and that closure in turn accepts a string:

func travel(action: (String) -> Void) {print("I'm getting ready to go.")action("London")print("I arrived!")
}

Now when we call travel() using trailing closure syntax. our closure code is required to accept a string:

travel { (place: String) inprint("I'm going to \(place) in my car")
}

0x01 我的小作品

欢迎体验我的作品之一:小汉字-XHanzi
汉字书写入门,常用汉字 3800 个,二级字表 2200
App Store 搜索即可~


相关内容

热门资讯

瑜欣电子涨11.94%,成交额... 8月12日,瑜欣电子涨11.94%,成交额1.18亿元,换手率6.62%,总市值31.85亿元。异动...
海通发展跌4.37%,成交额5... 8月12日,海通发展跌4.37%,成交额5.26亿元,换手率10.82%,总市值156.31亿元。异...
江苏博云涨0.08%,成交额8... 8月12日,江苏博云涨0.08%,成交额8797.41万元,换手率2.23%,总市值51.11亿元。...
超捷股份涨8.29%,成交额1... 8月12日,超捷股份涨8.29%,成交额12.53亿元,换手率8.54%,总市值154.98亿元。异...
飞南资源跌0.33%,成交额1... 8月12日,飞南资源跌0.33%,成交额1.97亿元,换手率5.65%,总市值135.28亿元。异动...