提取元组组件
使用 fst
和 snd
函数(来自 Prelude
或 Data.Tuple
)来提取对的第一和第二组成部分。
fst (1, 2) -- evaluates to 1
snd (1, 2) -- evaluates to 2
或者使用模式匹配。
case (1, 2) of (result, _) => result -- evaluates to 1
case (1, 2) of (_, result) => result -- evaluates to 2
模式匹配也适用于具有两个以上组件的元组。
case (1, 2, 3) of (result, _, _) => result -- evaluates to 1
case (1, 2, 3) of (_, result, _) => result -- evaluates to 2
case (1, 2, 3) of (_, _, result) => result -- evaluates to 3
对于具有两个以上组件的元组,Haskell 不提供像 fst
或 snd
这样的标准函数。 Hackage 上的 tuple
库在 Data.Tuple.Select
模块中提供了这样的功能。