Elixir語言中 Enum.split_with
相關用法介紹如下。
用法:
split_with(enumerable, fun)
(從 1.4.0 開始)
@spec split_with(t(), (element() -> as_boolean(term()))) :: {list(), list()}
根據給定的函數 fun
將 enumerable
拆分為兩個列表。
通過調用 fun
將給定的 enumerable
拆分為兩個列表,並將 enumerable
中的每個元素作為其唯一參數。返回一個元組,其中第一個列表包含 enumerable
中應用 fun
返回真值的所有元素,第二個列表包含應用 fun
返回虛假值的所有元素(false
或 nil
)。
兩個返回列表中的元素與它們在原始枚舉中的相對順序相同(如果這樣的枚舉是有序的,就像一個列表)。請參閱下麵的示例。
例子
iex> Enum.split_with([5, 4, 3, 2, 1, 0], fn x -> rem(x, 2) == 0 end)
{[4, 2, 0], [5, 3, 1]}
iex> Enum.split_with(%{a: 1, b: -2, c: 1, d: -3}, fn {_k, v} -> v < 0 end)
{[b: -2, d: -3], [a: 1, c: 1]}
iex> Enum.split_with(%{a: 1, b: -2, c: 1, d: -3}, fn {_k, v} -> v > 50 end)
{[], [a: 1, b: -2, c: 1, d: -3]}
iex> Enum.split_with(%{}, fn {_k, v} -> v > 50 end)
{[], []}
相關用法
- Elixir Enum.split_while用法及代碼示例
- Elixir Enum.split用法及代碼示例
- Elixir Enum.sum用法及代碼示例
- Elixir Enum.slice用法及代碼示例
- Elixir Enum.shuffle用法及代碼示例
- Elixir Enum.sort_by用法及代碼示例
- Elixir Enum.sort用法及代碼示例
- Elixir Enum.scan用法及代碼示例
- Elixir Enum.slide用法及代碼示例
- Elixir Enum.unzip用法及代碼示例
- Elixir Enum.min_max用法及代碼示例
- Elixir Enum.reduce_while用法及代碼示例
- Elixir Enum.at用法及代碼示例
- Elixir Enum.dedup用法及代碼示例
- Elixir Enum.zip用法及代碼示例
- Elixir Enum.find_value用法及代碼示例
- Elixir Enum.product用法及代碼示例
- Elixir Enum.map_join用法及代碼示例
- Elixir Enum.zip_with用法及代碼示例
- Elixir Enum.intersperse用法及代碼示例
- Elixir Enum.flat_map用法及代碼示例
- Elixir Enum.count用法及代碼示例
- Elixir Enum.fetch用法及代碼示例
- Elixir Enum.frequencies用法及代碼示例
- Elixir Enum.drop用法及代碼示例
注:本文由純淨天空篩選整理自elixir-lang.org大神的英文原創作品 Enum.split_with(enumerable, fun)。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。