如何使用两个列表的地图?

时间:2013-02-12 04:46:06

标签: sml

在SML中,如何使用一个带有两个列表的map函数,并返回一个列表中每个元素的列表,再乘以另一个列表中的相应元素?

我试过

fun mult_list v1 v2 = map (fn (x, y) => x * y) (v1, v2);

但它不起作用......

1 个答案:

答案 0 :(得分:3)

您想要ListPair.map

fun mult_list v1 v2 = ListPair.map (fn (x, y) => x * y) (v1, v2)

,顺便说一下,可以缩写为

fun mult_list v1 v2 = ListPair.map op* (v1, v2)

如果要在列表长度不同时强制执行异常,也可以使用ListPair.mapEq