如何將Swift中的多參函數(shù)轉(zhuǎn)化成Curring函數(shù)
來(lái)源:程序員人生 發(fā)布時(shí)間:2015-05-26 08:28:35 閱讀次數(shù):2580次
假定我們有1個(gè)含有多個(gè)參數(shù)的函數(shù),用于構(gòu)建1個(gè)人的基本信息:
func buildInfoWithName(name: String,#age: Int,#gender: String,#address: String,#phone: String) -> String {
return "My name is " + name
+ ",I'm a " + gender
+ ",I live in " + address
+ ",my phone number is " + phone
}
let mike = buildInfoWithName("Mike",age: 20,gender: "boy",address: "Tokyo Japan",phone: "12345678")
如果我們不想1次性提供所有的參數(shù),可以把它改造成Curring函數(shù):
func buildInfoWithName(name: String)(age: Int)(gender: String)(address: String)(phone: String) -> String {
return "My name is " + name
+ ",I'm a " + gender
+ ",I live in " + address
+ ",my phone number is " + phone
}
let benson = buildInfoWithName("Benson")(age: 24)(gender: "boy")(address: "Chengdu Sichuan")(phone: "87654321")
我們把原始的函數(shù)已分解成了接受單1參數(shù)的函數(shù)序列。
參考鏈接: http://justtesting.org/post/94325843216/what-is-currying-in-swift
生活不易,碼農(nóng)辛苦
如果您覺(jué)得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)