在SML中,如何使用一个带有两个列表的map函数,并返回一个列表中每个元素的列表,再乘以另一个列表中的相应元素?
我试过
fun mult_list v1 v2 = map (fn (x, y) => x * y) (v1, v2);
但它不起作用......
答案 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
。