【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 搜索即可~


相关内容

热门资讯

太平人寿江苏分公司“消保驿站”... 转自:扬子晚报冬至时节,暖意融融。近日,“金融为民 暖心相伴”——太平人寿首批“消保驿站”揭牌活动在...
联想Lenovo Watch ...   炒股就看金麒麟分析师研报,权威,专业,及时,全面,助您挖掘潜力主题机会! (来源:IT之家)I...
新版外商投资目录来了,哪些变化... 引导更多外资投向先进制造业、现代服务业等,以及中西部和东北。 国家发展改革委、商务部全文发布《鼓励外...
百位科学家推荐的“启蒙书单” 美国《华盛顿邮报》12月23日文章,原题:改变一百位科学家职业生涯的儿童读物 孩子们出生时,笔者就决...
卫星导航板块走强 超捷股份涨停   12月25日消息,截止14:20,卫星导航板块走强,超捷股份、三维通信、长江通信、天奥电子、上海...