如何在地图中获取关键值?

时间:2016-05-22 14:40:46

标签: elixir

示例:

_/\_ 

根据上面的地图,我想得到值map = %{a: 'apple', o: 'orange'} 的关键字。

1 个答案:

答案 0 :(得分:12)

要获取地图中特定值的键,可以执行ff:

map
|> Enum.find(fn {key, val} -> val == 'orange' end)
|> elem(0)

以上返回:o。请注意,标准库中没有为我们执行此操作的功能。这可能是因为我们无意根据地图中的值获取密钥。根据密钥获取价值总是要高效得多。也许您可以重新考虑如何使用地图并找到一种方法来使'orange'成为关键。

顺便说一句,您使用'orange'的字符列表而不是"string"