Elixir 生成N个自然数的序列
在Ruby中,可以使用splat来实现这一点Elixir 生成N个自然数的序列,elixir,Elixir,在Ruby中,可以使用splat来实现这一点 [*1..5] # => [1, 2, 3, 4, 5] 如何在长生不老药中做到这一点 我知道我可能会使用reduce,但也许有一种更简单的方法?长生不老药就像Ruby一样。它们实现了,所以在大多数情况下不需要将它们转换为列表。范围的行为方式通常与列表相同: iex> [1, 2, 3, 4, 5] |> Enum.map(fn x -> x*x end) [1, 4, 9, 16, 25] iex> 1..5 |&
[*1..5]
# => [1, 2, 3, 4, 5]
如何在长生不老药中做到这一点
我知道我可能会使用reduce
,但也许有一种更简单的方法?长生不老药就像Ruby一样。它们实现了,所以在大多数情况下不需要将它们转换为列表。范围的行为方式通常与列表相同:
iex> [1, 2, 3, 4, 5] |> Enum.map(fn x -> x*x end)
[1, 4, 9, 16, 25]
iex> 1..5 |> Enum.map(fn x -> x*x end)
[1, 4, 9, 16, 25]
但是,如果出于某种原因确实需要列表,可以通过以下方式进行转换:
iex> 1..5 |> Enum.to_list
[1, 2, 3, 4, 5]