13 函數(shù)
oc函數(shù)定義:
返回值類型 函數(shù)名(參數(shù)類型 參數(shù)名,參數(shù)類型 參數(shù)名){
}
swift 函數(shù)定義:
func 函數(shù)名(參數(shù)名:參數(shù)類型,參數(shù)名:參數(shù)類型) -> 返回值類型{
}
swift中沒有返回值的函數(shù)有三種寫法:
13.1
func 函數(shù)名(參數(shù)名:參數(shù)類型,參數(shù)名:參數(shù)類型) -> Void{
}
13.2
func 函數(shù)名(參數(shù)名:參數(shù)類型,參數(shù)名:參數(shù)類型) -> (){
}
13.3
func 函數(shù)名(參數(shù)名:參數(shù)類型,參數(shù)名:參數(shù)類型){
}
swift中沒有行參的函數(shù)函數(shù)名后面的小括號(hào)也不能省略
返回元組的函數(shù)定義:
func 函數(shù)名(參數(shù)名:參數(shù)類型,參數(shù)名:參數(shù)類型) -> (元素名稱:元素類型,元素名稱:元素類型){
}
swift中的外部參數(shù)名
func 函數(shù)名(外部參數(shù)名 形式參數(shù)名:參數(shù)類型,外部參數(shù)名 形式參數(shù)名:參數(shù)類型) -> 返回值類型{
}
//形式參數(shù)名前面加上# ,則外部參數(shù)名與形式參數(shù)名相同
func 函數(shù)名(#形式參數(shù)名:參數(shù)類型,#形式參數(shù)名:參數(shù)類型) -> 返回值類型{
}
當(dāng)調(diào)用增加了外部參數(shù)名的函數(shù),在調(diào)用時(shí),則編譯器會(huì)自動(dòng)生成帶有外部參數(shù)名的調(diào)用,并且外部參數(shù)名在調(diào)用時(shí)必須加上且參數(shù)順序必須與定義時(shí)一致,這樣可以增加調(diào)用者對(duì)參數(shù)的可讀性
如
func addPerson(person_name:String,person_age:Int){
}
addPerson(person_name:"jack",person_age:28)
swift中的默認(rèn)參數(shù)值
func 函數(shù)名(外部參數(shù)名 形式參數(shù)名:參數(shù)類型 = 參數(shù)默認(rèn)值,外部參數(shù)名 形式參數(shù)名:參數(shù)類型) -> 返回值類型{
}
帶有默認(rèn)值的函數(shù)調(diào)用時(shí),有默認(rèn)值的參數(shù)可以不傳值,且如果不指定有默認(rèn)值行參的外部參數(shù)名,swift會(huì)自動(dòng)生成一個(gè)與其行參名相同的外部參數(shù)名,在有默認(rèn)值的行參參數(shù)名前加上_,則調(diào)用時(shí)不需要寫其外部參數(shù)名
注意: oc中參數(shù)在函數(shù)體內(nèi)是可以修改其值的,因?yàn)槠渥饔妙愃朴诰植孔兞俊5窃趕wift中,參數(shù)默認(rèn)都是常量參數(shù),不能在函數(shù)體內(nèi)修改參數(shù)值。如果需要在函數(shù)體內(nèi)修改參數(shù)值,則需要定義變量參數(shù),即在參數(shù)名前加var關(guān)鍵字即可。
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注