読者です 読者をやめる 読者になる 読者になる

Haskell を使ってみる 4 (タプル)

Haskell

前回の続き

Haskell を使ってみる 3 (リスト内包表記) - kntmr-blog

タプル

異なる型の要素を格納できる

Prelude> (1,2) -- サイズ2のタプルはペアと呼ばれる
(1,2)
Prelude> [(1,'a',"hoge")] -- サイズ3のタプルはトリプルと呼ばれる
[(1,'a',"hoge")]

タプルはサイズが固定であり、ペアとトリプルは違う型として扱われる。

Prelude> [(1,2), (4,5,6), (7,8)] -- ペアとトリプルを混在させるとエラー

サイズが同じで要素の異なるタプルを区別する

Prelude> [(1,2),('a',2)] -- これはエラー

ペアを操作する関数

Prelude> fst (1,'a') -- 1つ目の要素を返す
1
Prelude> snd (1,'a') -- 2つ目の要素を返す
'a'
Prelude> zip [1,2,3,4,5] ['a','b','c','d','e'] -- 2つのリストを受け取りタプルのリストを作成する
[(1,'a'),(2,'b'),(3,'c'),(4,'d'),(5,'e')]

空のタプル () はユニットと呼ばれる。


今回はタプルのところだけ。