2015-11-01 42 views

回答

0

如果密钥不在列表中,函数应该做什么?

如果你确定,关键是在列表中,然后

import Data.Maybe 

和运行结果(即可能智力)通过fromJust。你会得到一个纯粹的Int,并且当键不在列表中时,你会得到一个异常。

1

如果密钥不在列表中,您希望它返回什么?

有一个原因,查找返回Maybe Int而不是一个Int - 强制程序员处理失败的情况。

对付可能的简便方法是使用默认值,例如:

withDefaultValue = fromMaybe 0 (lookup key myList) 

如果你是100%肯定该值在列表中,你可以使用fromJust

result = fromJust (lookup key myList) 

如果列表中可能不包含该项目,但无法处理该函数中的代码失败,请将函数Maybe从函数中传递出去,直到它到达可处理失败的代码部分。

相关问题