我有一个ets表格式如下
ets:new(players, [set,named_table])
放入表格的数据是球员姓名及其年龄 .
它的格式为[{Name,Age}]
我做了一个功能,试图让玩家年龄和年龄 .
getPlayerAge(PlayerName)->
Player = ets:lookup(players,PlayerName),
[{_,Age}] = Player,
Age.
我得到了一个糟糕的错误,说实话,我很困惑 .
可以这样做还是我离开了?
1 回答
据推测,确切的错误是这一个:
也就是说,你从
ets:lookup
获得的值是[]
,空列表,并且与模式[{_,Age}]
不匹配 . 如果ets:lookup
找不到具有给定键的元素,则返回空列表 . 您可以通过调用ets:tab2list(players)
并检查返回值来检查表实际上是否包含您希望包含的内容 .