tuple型とは
tuple(= タプル)は名前はないけれども、複数の値を1セットにしたい場合に利用するデータ型です。特に、クラス型や値型をわざわざ作成する必要がない場合に利用されることが多いです。
tupleは 参照型でも値型でもどちらでも宣言できます。
// ------------------
// [ 構文 ]
// ------------------
(element, ..., element) // 参照型
struct (element, ..., element) // 値型
以下は簡単な宣言のサンプルになります。
個々の値を取得する
"パターンマッチ" を利用することで、tupleの個々の値を簡単に取得できます。
また、let束縛の際にもパターンマッチを利用してtupleを分解することが可能です。
tupleの要素の中で、1つの要素のみが必要な場合や、tupleの全要素ではなく一部の要素のみが欲しい場合があります。そのような場合には、ワイルドカード文字(= アンダースコア)を利用することで、不要な値を無視することが可能です。
2要素のtupleの場合は、fstとsnd関数を利用して、1つ目の要素だけ(または、2つ目の要素だけ)を取得することができます。