一、函數(shù)func的定義:
func函數(shù)是一段完成特定任務(wù)的獨(dú)立代碼片段。
二、函數(shù)func的組成:
func函數(shù),常見(jiàn)的函數(shù)符合以下樣式。
func welcome(to our :String)-> String {
print("你真好看")
}
welcome(to:王小花)
各部分的含義:
1)func 為函數(shù)的標(biāo)識(shí)符,表示這是一個(gè)函數(shù)。
2)welcome:函數(shù)的名稱(chēng)
3)(to our :String):是函數(shù)的參數(shù),又由三部分組成,分別是(參數(shù)標(biāo)簽 參數(shù)名 : 參數(shù)值類(lèi)型),即參數(shù)標(biāo)簽:to、參數(shù)名:our、參數(shù)值類(lèi)型:string。
參數(shù)標(biāo)簽用于func函數(shù)的外部調(diào)用,參數(shù)名用于函數(shù)的內(nèi)部調(diào)用,即func的{花括號(hào)內(nèi)部使用}
參數(shù)標(biāo)簽可以省略不寫(xiě),即(our :String)。參數(shù)也可以為空,即()。
一個(gè)函數(shù)可以有多個(gè)參數(shù),即(to our :String,age age :Int)等。
4)-> String ,它表示函數(shù)的返回值類(lèi)型,即:String。
5){花括號(hào)里的內(nèi)容}為函數(shù)的函數(shù)體。
6){最后一個(gè)花括號(hào)外的內(nèi)容}為調(diào)用這個(gè)函數(shù)
三、練習(xí)題
1)定義一個(gè)函數(shù),函數(shù)名稱(chēng)為greet,函數(shù)名稱(chēng)的參數(shù)為空,函數(shù)體內(nèi)寫(xiě)上print("hello"),沒(méi)有返回值,并在func的{大括號(hào)外}調(diào)用函數(shù)。當(dāng)我們運(yùn)行的時(shí)候,控制臺(tái)會(huì)顯示hello,即函數(shù)體內(nèi)的內(nèi)容。

嘗試把greet后面的()去掉,會(huì)出現(xiàn)什么? 系統(tǒng)進(jìn)行報(bào)錯(cuò),如果函數(shù)沒(méi)有參數(shù),需要輸入空()代替,不可省略。
2)定義一個(gè)名為?greet_1函數(shù),有一個(gè)Int類(lèi)型的參數(shù),沒(méi)有返回值。
func greet_1(one : Int) {
}
現(xiàn)在我們?cè)黾与y度,因?yàn)榇藭r(shí)我們的參數(shù)名稱(chēng)為one,參數(shù)值類(lèi)型為:Int,我們希望函數(shù)完成的內(nèi)容是,one的值是2,我們就print(“hello”)2遍。這運(yùn)用到之前的while循環(huán)的內(nèi)容。
先自行腦補(bǔ),之后我們敲代碼。
func greet_1(one:Int) {
var count = 2 ? ? ? ? ? ?//在函數(shù)體內(nèi)新引入變量count,該變量?jī)H在函數(shù)體內(nèi)被識(shí)別。此類(lèi)變量為臨時(shí)變量。
while count != one { ? ? ?// “!=”為比較操作符,意思是“不等于”,在第一天有學(xué)到。
print("hello")
count += 1
}
}
greet_1(one: 2)

3)找不同
以下寫(xiě)法和上例有什么不同?

不同點(diǎn):a,greet_1的參數(shù)內(nèi)多了一個(gè) " _ "。 b,調(diào)用函數(shù)greet_1(2)。
原因:" _ "指的是參數(shù)標(biāo)簽,用于外部調(diào)用,表示標(biāo)簽名稱(chēng)為空,即沒(méi)有標(biāo)簽。
因此,在外部調(diào)用greet_1(2),可直接調(diào)用參數(shù)的類(lèi)型。
四、明天的教學(xué)內(nèi)容是函數(shù)的多個(gè)參數(shù)變量和返回值!下課!
謝謝優(yōu)優(yōu)師傅!