我在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可以满足您的需求。

10-08 14:54
查看更多