構造体、列挙型、タプル (3/3)
作成:2014-10-11 11:12
更新:2014-10-11 11:12
更新:2014-10-11 11:12
■タプル(Tuple)について
タプルは、既に何度か登場しましたね。種類の異なる複数の値をひとまとめにして扱うことのできるものでした。これは以下のように記述しました。
このように、ただ値を()の中にカンマで区切って書いていくだけでタプルが作成できます。この中にある値は、「〇〇.1」というように、タプルの値を保管した変数の後にドットで番号を指定することで取り出すことができます。
ただし、番号指定のやり方は、きっちり値の順番を理解してないと間違えることもあります。そこでタプルには、辞書のようにキーで名前をつけておくこともできるようになっています。
このように記述されたタプルは、「〇〇.キー」というように、番号ではなくキーを指定して値を取り出せるようになります。これは、ちょうど配列と辞書の違いのような感じと考えるとよいでしょう。
実を言えば、Swiftでは、すべての値はタプルとして内部的に扱われています。タプルは特殊な値ではなく、実は「値の基本」だったりします。試しに、
こんな具合に実行してみると、ちゃんと100が出力されます。xではなく、x.0で値が取り出せる、つまりxはタプルとして扱えることがわかるでしょう。
では、タプルも使用例を下にあげておきましょう。下のリストは、決まった形式のタプルを作る関数を用意し、それを利用してタプルを作って値を表示するサンプルです。
タプルは、好きなように値の構成を作ることができるので、自由すぎて逆に「中身がバラバラでどうなってるかわからない」という問題もありますが、こんな具合にすれば同じ形式のタプルを作ることができますね!
( 値1 , 値2, ……)
このように、ただ値を()の中にカンマで区切って書いていくだけでタプルが作成できます。この中にある値は、「〇〇.1」というように、タプルの値を保管した変数の後にドットで番号を指定することで取り出すことができます。
ただし、番号指定のやり方は、きっちり値の順番を理解してないと間違えることもあります。そこでタプルには、辞書のようにキーで名前をつけておくこともできるようになっています。
( キー1 : 値1 , キー2 : 値2 , ……)
このように記述されたタプルは、「〇〇.キー」というように、番号ではなくキーを指定して値を取り出せるようになります。これは、ちょうど配列と辞書の違いのような感じと考えるとよいでしょう。
実を言えば、Swiftでは、すべての値はタプルとして内部的に扱われています。タプルは特殊な値ではなく、実は「値の基本」だったりします。試しに、
var x = 100
println(x.0)
こんな具合に実行してみると、ちゃんと100が出力されます。xではなく、x.0で値が取り出せる、つまりxはタプルとして扱えることがわかるでしょう。
では、タプルも使用例を下にあげておきましょう。下のリストは、決まった形式のタプルを作る関数を用意し、それを利用してタプルを作って値を表示するサンプルです。
タプルは、好きなように値の構成を作ることができるので、自由すぎて逆に「中身がバラバラでどうなってるかわからない」という問題もありますが、こんな具合にすれば同じ形式のタプルを作ることができますね!
(by. SYODA-Tuyano.)
※プログラムリストが表示されない場合
AddBlockなどの広告ブロックツールがONになっていると、プログラムリスト等が表示されない場合があります。これらのツールをOFFにしてみてください。
●プログラム・リスト●
func MakeTuple(#name:String, #age:Int)->(name:String,age:Int) { return (name:name, age:age) } var me = MakeTuple(name:"Yamada", age:99) var you = MakeTuple(name:"Hanako", age:36) println(me.name) println(you.age)
※関連コンテンツ