> Erlang中文手册 > is_key/2 判断键是否在字典里

dict:is_key/2

判断键是否在字典里

用法:

is_key(Key, Dict) -> bool()

内部实现:

-spec is_key(Key, Dict) -> boolean() when
      Key :: term(),
      Dict :: dict().

is_key(Key, D) ->
    Slot = get_slot(D, Key),
    Bkt = get_bucket(D, Slot),
    find_key(Key, Bkt).

find_key(K, [?kv(K,_Val)|_]) -> true;
find_key(K, [_|Bkt]) -> find_key(K, Bkt);
find_key(_, []) -> false.

判读键 Key 是否在字典 Dict 里存在

D = dict:from_list([{k1, v1}, {k2, v2}, {k3, v3}]),
dict:is_key(k1, D).