【iOS 中文開放式課程】函式 (function)

我們需要您的贊助

https://goo.gl/xIeQ8t





函式(function)是一段完成特定任務的獨立程式碼區塊。可將特定功能寫成一個函式來簡化程式碼。

基本函數格式

func 函式名稱() {
    呼叫函式後將執行的程式
}

範例

呼叫 ShowCourseState ,
就會印出:「 iOS 中文開放式課程,目前線上觀看人數: 3000人 」
func ShowCourseState() {
    print("iOS 中文開放式課程,目前線上觀看人數: 3000人")
}

ShowCourseState()

//iOS 中文開放式課程,目前線上觀看人數: 3000人

函式帶進參數格式

函式可傳入參數(parameter),參數需要明確標註型態,會將參數指派給一個常數
func 函式名稱(參數將指派值給的常數: 型態標註) {
    呼叫函式後將執行的程式
}

範例

func ShowCourseState(course: String) {
    print("\(course),目前線上觀看人數: 3000 人")
}


ShowCourseState(course:"iOS 中文開放式課程")

//iOS 中文開放式課程,目前線上觀看人數: 3000人

函式帶進多組參數,範例

func ShowCourseState(course: String , viewer: Int) {
    print("\(course),目前線上觀看人數: \(viewer)人")
}


ShowCourseState(course:"iOS 中文開放式課程", viewer: 3000)

//iOS 中文開放式課程,目前線上觀看人數: 3000人

外部、內部函式參數名稱

  • 外部參數名稱: 用於呼叫函式時使用,參數名稱可以設為底線 _
  • 內部參數名稱: 用於函式括號內部程式使用
  • 外部參數名稱,可以設為底線 _ ,呼叫函數使用時則可以不用寫參數名稱
func 函式名稱(外部參數名稱1 內部參數名稱1: 型態1,
  外部參數名稱2 內部參數名稱2: 型態2) {
    // 內部執行的程式
}
func ShowCourseState(_ course: String ,_ viewer: Int) {
    print("\(course),目前線上觀看人數: \(viewer)人")
}


ShowCourseState("iOS 中文開放式課程", 3000)

//iOS 中文開放式課程,目前線上觀看人數: 3000人

函式預設參數值

呼叫函式如果未傳入參數時,則就會使用這個預設值
func ShowCourseState(_ course: String ,_ viewer: Int = 0) {
    print("\(course),目前線上觀看人數: \(viewer)人")
}


ShowCourseState("iOS 中文開放式課程", 1000)
ShowCourseState("iOS 中文開放式課程")
//iOS 中文開放式課程,目前線上觀看人數: 1000人
//OS 中文開放式課程,目前線上觀看人數: 0人

函式返回值

呼叫函式,可以返回值。
-> Int : 返回整數
-> String : 返回字串
func sum(_ a: Int, _ b: Int) -> Int
{
  return a+b
}

print(sum(3,2))
//5

函式多重返回值

返回值,超過一個值以上,將會以元組(Tuple)資料型態返回
func calc(_ a: Int, _ b: Int) -> (Int,Int,Int,Int)
{
  return (a*b,a/b,a+b,a-b)
}

var result = calc(3,2)
print(result)
print("乘法運算結果: \(result.0)")
print("除法運算結果: \(result.1)")
print("加法運算結果: \(result.2)")
print("減法運算結果: \(result.3)")
//(6,1,5,1)
//乘法運算結果: 6
//除法運算結果: 1
//加法運算結果: 5
//減法運算結果: 1

參考資料:

這個網誌中的熱門文章

16天記下7000單字

2023 最新入門零基礎 Kotlin教學【從零開始學 Kotlin 程式設計】Kotlin 教學課程目錄 (Android Kotlin, IntelliJ IDEA, Android Studio, Android APP 開發教學)

2022 最新入門零基礎 Flutter教學 【Flutter 程式設計入門實戰 30 天】Flutter 教學課程目錄 (IntelliJ IDEA 開發教學)

nano 文字編輯器

【從零開始學 Flutter 程式設計】SharedPreferences 設定檔資料存取