Swift

【Swift】複数の返り値をクロージャーに持たせたい

タプルを使う

タプルを使うと、クロージャーの返り値を複数持たせることができます。

宣言時

func exampleTuple() -> (str: String, num: Int) {
    return ("テスト文字列", 10)
}

 

呼び出す時

let tuple = exampleTuple()
print(tuple.str) // テスト文字列
print(tuple.num) // 10

タプルとは

タプルは異なる型を入れることができますが、

配列のように繰り返し処理はできません。

また、一度定義したら変数の長さが固定されるため、値の追加や削除はできません。

タプルの宣言

変数をつけないとき
let tuple: (Int, String, Bool) = (10, "ten", true)

//変数名を付けない時は、インデックス番号を指定して取り出します。

print(tuple.0) // 10
print(tuple.1) // ten
print(tuple.2) // true

 

変数をつけるとき
//変数名をつけて宣言するときは、型は指定しません。

let tupleWithVar = (num: 10, str: "ten", isTrue: true)
print(tupleWithVar.num) // 10
print(tupleWithVar.str) // ten
print(tupleWithVar.isTrue) // true

//変数名をつけている場合でも、インデックス番号で呼び出すことが可能です。

print(tupleWithVar.0) //10

 

ABOUT ME
伊原 萌夏
スクール担当 兼 iOS(時々Web)エンジニア。 2019年7月に大学を一年半で辞め、大学とは別で勉強していたプログラムの世界で生きていくことを決意。翌月8月に入社。 主にSwiftのスクールを担当。 趣味は和装でお出かけ。

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA