使用整数键创建映射

Oto*_*oma 2 dictionary elixir

我想创建一个带有整数类型键的地图,但这不起作用:

iex(1)> a = %{3: "fdsfd"}
** (SyntaxError) iex:1: unexpected token: ":" (column 8, codepoint U+003A)

iex(1)> a = %{:3 => "fdsfd"}
** (SyntaxError) iex:1: unexpected token: ":" (column 7, codepoint U+003A)
Run Code Online (Sandbox Code Playgroud)

She*_*yar 5

要将整数用作键,只需像这样使用它:

map = %{ 3 => "value" }
Run Code Online (Sandbox Code Playgroud)

:3是 Elixir 中的无效值;原子在 Elixir 中既不是字符串也不是整数,它们是常量,它们的名字就是它们的值。要使用仅3作为原子的键,您必须使用以下命令:

map = %{ :"3" => "value" }
Run Code Online (Sandbox Code Playgroud)