Elixir语言中 Map.put_new_lazy
相关用法介绍如下。
用法:
put_new_lazy(map, key, fun)
@spec put_new_lazy(map(), key(), (() -> value())) :: map()
评估fun
并将结果放在map
中的key
下,除非key
已经存在。
仅当 key
不存在时,如果您想要计算放置在 key
下的值,此函数很有用,例如,当该值的计算成本很高或通常难以再次设置和拆卸时。
例子
iex> map = %{a: 1}
iex> fun = fn ->
...> # some expensive operation here
...> 3
...> end
iex> Map.put_new_lazy(map, :a, fun)
%{a: 1}
iex> Map.put_new_lazy(map, :b, fun)
%{a: 1, b: 3}
相关用法
- Elixir Map.put_new用法及代码示例
- Elixir Map.put用法及代码示例
- Elixir Map.pop_lazy用法及代码示例
- Elixir Map.pop!用法及代码示例
- Elixir Map.pop用法及代码示例
- Elixir Map.keys用法及代码示例
- Elixir Map.values用法及代码示例
- Elixir Map.update用法及代码示例
- Elixir Map.split用法及代码示例
- Elixir Map.drop用法及代码示例
- Elixir Map.get用法及代码示例
- Elixir Map.new用法及代码示例
- Elixir Map.take用法及代码示例
- Elixir Map.get_and_update!用法及代码示例
- Elixir Map.has_key?用法及代码示例
- Elixir Map.replace用法及代码示例
- Elixir Map.update!用法及代码示例
- Elixir Map.from_struct用法及代码示例
- Elixir Map.reject用法及代码示例
- Elixir Map.delete用法及代码示例
- Elixir Map.to_list用法及代码示例
- Elixir Map.equal?用法及代码示例
- Elixir Map.fetch!用法及代码示例
- Elixir Map.merge用法及代码示例
- Elixir Map.filter用法及代码示例
注:本文由纯净天空筛选整理自elixir-lang.org大神的英文原创作品 Map.put_new_lazy(map, key, fun)。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。