我在Haskell中编写的程序具有我定义的类型的列表实例:
type Locals = [(String, Float)]
我正在尝试通过接收字符串并更新相应的浮点值来更新此列表,但是该字符串当时可能不在列表中。
由于Haskell列表是不可变的,因此我决定最简单的方法是使用伪代码进行此操作:
if a tuple containing the string exists:
delete it
add the correct data
我想知道:
a)如果有更简单的方法可以做到这一点
b)如果没有,我将如何删除正确的元素
谢谢
最佳答案
看起来像一个关联 map 。我会使用Data.Map
。这在其他语言中被称为“字典”。 Map.insert
可以满足您的需求。