List.Map

List.map 有一个签名 ('a -> 'b) -> 'a list -> 'b list,它在英语中是一个函数,它将一个函数(我们称之为映射函数)从一种类型(即'a)转换为另一种类型(即'b)和第一种类型的列表。该函数返回第二种类型的列表,其中每个元素都是在第一个列表的元素上调用映射函数的结果。

List.map string_of_int [ 1; 2; 3; 4 ]
#- [ "1"; "2"; "3"; "4" ] : string list

'a'b 的类型不必相同。例如,我们可以轻松地将数字映射到它们的方块。

let square x = x * x in
List.map square [ 1; 2; 3; 4 ]
#- [ 1; 4; 9; 16 ] : int list