Erlang中文手册(Erldoc.com)  »  proplists  »  is_defined/2
Erlang并发编程 Erlang/OTP设计原理 Erlang/OTP[pdf] Mnesia用户手册[pdf] Erlang完整手册[en] 官网手册[en] 模块列表 方法列表 随机 Erlang中文社区(BBS) 美女图库

proplists:is_defined/2

判断列表里是否有指定键的条目

用法:

is_defined(Key, List) -> boolean()

内部实现:

%% @doc Returns true if List contains at least
%% one entry associated with Key, otherwise
%% false is returned.

-spec is_defined(Key, List) -> boolean() when
      Key :: term(),
      List :: [term()].

is_defined(Key, [P | Ps]) ->
    if is_atom(P), P =:= Key ->
	    true;
       tuple_size(P) >= 1, element(1, P) =:= Key ->
	    true;
       true ->
	    is_defined(Key, Ps)
    end;
is_defined(_Key, []) ->
    false.

如果列表 List 里至少包含一个跟键 Key 相关的条目,那么返回 true,否则返回 false。

List = [{a, 1}, {b, 2}, {c, 3}],
proplists:is_defined(b, List).
阿里云 - 最高1000元通用代金券立即可用
沪ICP备13037221号-9