你如何从SML中的元组列表中获取元素?

时间:2013-11-27 10:34:21

标签: sml

我刚开始学习SML,现在我想知道你是如何从元组列表中获取元素的?假设我有列表[(#“D”,7),(#“E”,5),(#“M”,1),(#“N”,6),(#“O”,0 ) (#“R”,8),(#“S”,9),(#“Y”,2)]只想要整数,所以我可以将它们加在一起,如7 + 5 + 1 + 6 + 0 + 8 + 9 + 2.这可能,如果可行,怎么办呢?

1 个答案:

答案 0 :(得分:4)

以下内容获取包含元组的所有第二个元素的列表 - 即示例列表中的整数。

fun getSeconds []          = []
  | getSeconds ((_,x)::xs) = x :: getSeconds xs

如果你想在进行中添加它们:

fun sumSeconds []          = 0
  | sumSeconds ((_,x)::xs) = x + sumSeconds xs