“Progarmming Elixir Note”的版本间的差异
来自Dennis的知识库
Dennis zhuang(讨论 | 贡献) |
Dennis zhuang(讨论 | 贡献) |
||
第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)>