“Progarmming Elixir Note”的版本间的差异

来自Dennis的知识库
跳转到: 导航搜索
第7行: 第7行:
 
* 使用模式匹配内容:Map
 
* 使用模式匹配内容:Map
 
* 需要保存很多项:HashDict,Map 性能较差。
 
* 需要保存很多项:HashDict,Map 性能较差。
 +
 +
 +
=== Keyword 模块示例 ===
 +
 +
<pre>
 +
iex(21)> kw_list = [name: "Dave", likes: "Elixir", likes: "Ruby", where: "Beijing"]
 +
[name: "Dave", likes: "Elixir", likes: "Ruby", where: "Beijing"]
 +
iex(22)> kw_list[:likes]
 +
"Elixir"
 +
iex(23)> Dict.get(kw_list, :likes)
 +
"Elixir"
 +
iex(24)> Keyword.get(kw_list, :likes)
 +
"Elixir"
 +
iex(25)> Keyword.get_values(kw_list, :likes)
 +
["Elixir", "Ruby"]
 +
iex(26)> Keyword.get_values(kw_list, :likes)
 +
["Elixir", "Ruby"]
 +
iex(27)>
 +
</pre>

2015年10月25日 (日) 09:14的版本


Dictionaries

  • 一个项对应多个同个 key: Keyword 模块
  • 要求顺序: Keyword 模块
  • 使用模式匹配内容:Map
  • 需要保存很多项:HashDict,Map 性能较差。


Keyword 模块示例

iex(21)> kw_list = [name: "Dave", likes: "Elixir", likes: "Ruby", where: "Beijing"]
[name: "Dave", likes: "Elixir", likes: "Ruby", where: "Beijing"]
iex(22)> kw_list[:likes]
"Elixir"
iex(23)> Dict.get(kw_list, :likes)
"Elixir"
iex(24)> Keyword.get(kw_list, :likes)
"Elixir"
iex(25)> Keyword.get_values(kw_list, :likes)
["Elixir", "Ruby"]
iex(26)> Keyword.get_values(kw_list, :likes)
["Elixir", "Ruby"]
iex(27)> 
个人工具
名字空间

变换
操作
导航
工具箱