【发布时间】:2017-06-12 05:03:29
【问题描述】:
以下代码片段有什么问题?
> A = [{X, 1} || X <- lists:seq(1,5)].
> lists:keyfind({3,1}, 1, A).
false
为什么函数返回假?理想情况下,它应该返回 {3,1}。
【问题讨论】:
-
你为什么期望它返回
{3,1}?lists:keyfind/3仅搜索列表中每个元组的第 N 个(在本例中为 1)项,而不是全部。你的意思是lists:keyfind(3, 1, A).? -
我想我没有正确理解这个函数的第二个参数。这个
N是什么意思?如果我想匹配{3,1}而不仅仅是3怎么办?
标签: erlang erlang-shell