如何使用 List.fold_left 填充 ocaml 中空字符串映射的键?
How to use List.fold_left to populate keys of empty string map in ocaml?
我有一个现有列表,我想将其移动到一个空的 StringMap 中。我只想让这个列表中的项目成为所述 StringMap 的键。
这就是我现在正在尝试做的事情:
utop # List.fold_left StringMap.empty [1,2,3];;
Error: This expression has type 'a StringMap.t
but an expression was expected of type 'b -> 'c -> 'b
但显然这是错误的,因为我收到了上面的错误信息
我该怎么办?提前致谢
List.fold_left
接受三个参数:要“折叠”的函数、初始值和要处理的列表。您只提供两个参数。您需要提供一个函数来处理列表的每个元素并生成中间结果。
下面是一个将列表的所有元素相加的示例:
# List.fold_left (fun a b -> a + b) 0 [1;3;5;7];;
- : int = 16
您需要一个类似上述的函数,只是它应该向地图添加一个元素。
我有一个现有列表,我想将其移动到一个空的 StringMap 中。我只想让这个列表中的项目成为所述 StringMap 的键。
这就是我现在正在尝试做的事情:
utop # List.fold_left StringMap.empty [1,2,3];;
Error: This expression has type 'a StringMap.t
but an expression was expected of type 'b -> 'c -> 'b
但显然这是错误的,因为我收到了上面的错误信息
我该怎么办?提前致谢
List.fold_left
接受三个参数:要“折叠”的函数、初始值和要处理的列表。您只提供两个参数。您需要提供一个函数来处理列表的每个元素并生成中间结果。
下面是一个将列表的所有元素相加的示例:
# List.fold_left (fun a b -> a + b) 0 [1;3;5;7];;
- : int = 16
您需要一个类似上述的函数,只是它应该向地图添加一个元素。