引数とは、手続において外部との値をやり取りする為の変数。
書式 引数がある関数
func 関数(引数:型,引数:型,引数:型,…) ->戻り値の型 {
ステートメント
return 戻り値
}
func price(ninzu:Int) -> Int { let tanka = 1200 let result = tanka * ninzu return result }
引数がある関数を実行する
書式
let 変数 = 関数名(引数名:値,引数名:値,引数名:値,…)
let price = price(ninzu: 5) print(price)
引数の個数を指定しない
引数の型の後に…を付けると、引数の個数を指定しない関数を定義出来る。
受け取った引数は配列で処理出来る。
func sum(numbers:Double...) -> Double { var total:Double = 0.0 for num in numbers { total += numbers } return total }
let goukei = sum(numbers: 1,2,3,4,5,6,7,8,9,10)
引数に初期値を設定する
書式
func 関数名(引数:型=値,引数:型=値,引数:型=値,…) -> 戻り値の型 {
ステートメント
return 戻り値
}
func greeting(who:String = "お客様") -> String { return who + "、こんにちは" } // 引数ありの場合 let greetingA = greeting(who: "田中様") // 引数なしの場合 let greetingA = greeting()
複数の戻り値がある関数
タプルを利用することで複数の戻り値を扱える。
書式
func 関数名(引数:型) -> (戻り値1の型,戻り値2の型,…) {
ステートメント
return(戻り値1,戻り値2,…)
}
func testResult(kokugo:Int, sugaku:Int, eigo:Int) -> (total:Int, average:Double) { let total = kokugo + sugaku + eigo let ave = double(total)/3 ave = round(ave*10)/10 return(total, ave) }