プログラミングを始める。 - 関数 2(返り値)
もう少しSwiftの関数について考えていきます。
基本的な形ですが、返り値(戻り値)"return"があります。これをつけることで、
-> Int
をつけることとなります。ここで返り値をもう少しツッコミます。
func calc(a:Int,b:Int)->Int{
let result = (a + b) * 2
return result
print("これは実行されません")
}
return result
とすることでこれ以下の命令、
print("これは実行されません")
は実行されません。"return"とすると関数は終了してしまい、この例だと、変数"result"に値は入っていきます。
使う時は
var data = calc(a: 3, b: 4)
print(data)
とします。関数じたいに値は残っているので関数自体を変数に代入してやれば値を取得することができます。
違った角度てみてみます。
func calc(a:Int,b:Int){
(a + b) * 2
}
として
var data = calc(a: 3, b: 4)
print(data)
すると出力は"()"となります。計算されていません(返り値がありません)。
処理自体が関数内で成立していても出力の方法が記述されていないので何もおきません。
func calc(a:Int,b:Int){
let result = (a + b) * 2
print( result)
}
として
calc(a: 3, b: 4)
としてやれば計算されたものが出力されます。この処理としては完結ですが、次に繋げる処理はできません。
そこで次に繋げることを目的とすれば、変数などに入れて次の処理に繋げていきたい時は返り値を使った関数を用意します。"return"を使います。
Swiftでは
func 関数名(引数)->型名{
return 関数の返す値
}
が基本形です。実際には
func calc(a:Int,b:Int)->Int{
return (a + b) * 2
}
という感じで使います。ここでは型名"Int"、関数の返す値は "(a + b) * 2"です。使うときは
var data = calc(a: 3, b: 4)
という感じで変数に入れることができます。Swiftでは、型名"Int"指定指定れば、"return"は省略可能です。
この記事が気に入ったらサポートをしてみませんか?