本教程力爭淺顯,每節內容合理設置,希望大家學的輕鬆
本系列教程
- 請點擊,免費訂閱《學Swift掙美元》專欄
- 《2019年學好Swift,一起掙美金吧》
- 《學Swift掙美元01之Swift語言發展歷史》
- 《學Swift掙美元02之學習資源》
- 《學Swift掙美元03之第一個程序》
- 《學Swift掙美元04之基礎類型(來個古詩程序)》
- 《學Swift掙美元05之函數(遊戲裏的組合拳))》
函數(遊戲裏的組合拳)
上一篇我們學習了常量和變量,本文我們來學習一下函數。函數基本上是所有編程語言的標配。函數可以理解成遊戲裏的大招,,爲了方便我們使用或者組合出更強的威力,我們通常會把一個個招式組合成一個大招。這樣當我遇到敵人時就可以一招制敵。
函數的作用
函數有個重要的作用
- 實現特定功能(例如遊戲裏的大招)
- 代碼可以重複使用(每次點一下就成可以放大,不用一刀一刀砍)
- 組合成更強的功能
- 方便模塊解耦(這個現在可以不用懂)
據蘋果自己吹噓,Swift語言提供一個優雅的函數表達,可以幫助我們創建簡潔、高效、安全、易讀的代碼。
其實我們就是爲掙美元,就是再醜再難用的編程語言我們也可以接受的。不過說實話,Swift的確設計的很不錯
看看美麗的Swift顏值如何
func nameOfFunction(
parameterLabel1 parameter1: ParameterType1,
parameterLabel2 parameter2: ParameterType2,...) -> OutputType {
// 函數的實現
// 如果函數有返回類型
// 則函數必須返回一個可用的值
return output
}
接下來我們看看函數的具體細節
func:這個表示您子啊定義一個函數。
nameOfFunction:這個是函數的名字,按照慣例它是以駝峯形式寫的 (這意味着除了第一個單詞之外, 每個單詞的首字母都是大寫,不能含空格)。這個名字是對函數功能的描述,建議您起一些有意義的名稱。因爲以後您通過名字就成發大招了。有些函數沒有返回值,有些函數是有返回值的。
parameterLabel1 parameter1: ParameterType1 :這個是函數的一個參數,
OutputType: 這個表示函數要返回一個值並且還定義了返回值的類型。如果我們沒有任何值輸出,那麼它就可以省略了。
{} :下面就是函數身體,裏面定義了我第一招出什麼,第二招如何幹
{
// 函數的實現
// 如果函數有返回類型
// 則函數必須返回一個可用的值
return output
}
我們寫個發大招的函數
import UIKit
func fadazhao(fagongzhe:String,bepangzhe:String,dazhao:String)-> String {
return "\(fagongzhe)使用\(dazhao)暴擊\(bepangzhe)"
}
let fagongzhe = "段譽"
let bepangzhe = "慕容復"
let dazhao = "六脈神劍"
print(fadazhao(fagongzhe:fagongzhe, bepangzhe:bepangzhe, dazhao:dazhao))
運行效果