有回傳值的函式


程式碼:

func add(number1:Int, number2:Int) -> Int{
    //->:代表執行完函式之後,會有回傳值,而回傳值的型別是Int
    let result = number1 + number2
    return result
}

let answer = add(number1:3, number2:5)
print(answer)
//得到結果:8

以上程式相等於以下程式(去掉result)

func add(number1:Int, number2:Int) -> Int{
//->:代表執行完函式之後,會有回傳值,而回傳值的型別是Int
    return number1 + number2
}

let answer = add(number1:3, number2:5)
answer
print(answer)
//得到結果:8

練習題:

  • 請寫一個名為Multiply的函式
  • 請包含二個參數
    • Number1:型別是整數
    • Number2:型別是整數
  • 最後回傳字串:「某數」乘以「某數」等於「某數」
  • 呼叫函式,參數代入8及7,自動得到結果56

解答:

func multiply(number1:Int, number2:Int) ->String{
    return "\(number1) * \(number2) = \(number1 * number2)"
}
print(multiply(number1: 8, number2: 7))

playground上的效果:


如何標示沒有回傳值

原本:

func sayHi(){
    print("歡迎光臨")
}
sayHi()
//因為這個函式不需要回傳值,所以這個函式的定義中沒有回傳箭頭(->)和回傳型別。

方式1:加入標示1"->()":

func sayHi() ->(){
    //加入 ->()
    print("歡迎光臨")
}
sayHi()

方式2:加入標示"-> Void":

func sayHi() ->(){
    //加入 ->()
    print("歡迎光臨")
}
sayHi()

results matching ""

    No results matching ""