地圖

Map 是一個函式,它將獲取陣列和函式,並在將該函式應用於該列表中的每個元素後返回一個陣列

defmodule MyList do
  def map([], _func) do
    []
  end

  def map([head | tail], func) do
    [func.(head) | map(tail, func)]
  end
end

複製 iex 中的貼上並執行:

MyList.map [1,2,3], fn a -> a * 5 end

簡寫語法是 MyList.map [1,2,3], &(&1 * 5)