【问题标题】:what is the BIF to remove an item from a list从列表中删除项目的 BIF 是什么
【发布时间】:2010-12-14 23:20:18
【问题描述】:

从列表中删除项目的 BIF 是什么?

【问题讨论】:

  • 检查man 3erl lists 比在此处输入您的问题花费的时间更少。此类问题请使用手册。
  • 此外,请为您的问题提供更多详细信息 - 例如要删除的项目的标准是什么?是物品的价值吗?是位置吗?

标签: erlang


【解决方案1】:

如果要删除给定元素,则为 lists:delete/2(不是 BIF)。

如果你想删除给定位置的元素,你可以这样做:

del_nth_from_list(List, N) ->
  {L1, [_|L2]} = lists:split(N-1, List),
  L1 ++ L2.

如果要删除所有出现,则:

del_all_occurences(List, Elem) ->
  [E || E <- List, E =/= Elem].

【讨论】:

    【解决方案2】:

    NewList = CurrentList -- ElementElement 是一个列表时

    例如NewList = CurrentList -- [{some_element}]

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-12-20
      • 1970-01-01
      • 2016-05-08
      • 2011-03-18
      相关资源
      最近更新 更多