> Erlang中文手册 > duplicate/2 返回一个由 N 个元素副本组成的列表

lists:duplicate/2

返回一个由 N 个元素副本组成的列表

用法:

duplicate(N, Element) -> List

内部实现:

%% duplicate(N, X) -> [X,X,X,.....,X]  (N times)
%%   return N copies of X

-spec duplicate(N, Elem) -> List when
      N :: non_neg_integer(),
      Elem :: T,
      List :: [T],
      T :: term().

duplicate(N, X) when is_integer(N), N >= 0 -> duplicate(N, X, []).

duplicate(0, _, L) -> L;
duplicate(N, X, L) -> duplicate(N-1, X, [X|L]).

返回一个包含 N 个元素 Element 副本的列表

lists:duplicate(5, elem_copy).