Buscar..


Sintaxis

  • map =% {} // crea un mapa vacío
  • map =% {: a => 1,: b => 2} // crea un mapa no vacío
  • list = [] // crea una lista vacía
  • list = [{: a, 1}, {: b, 2}] // crea una lista de palabras clave no vacía

Observaciones

Elixir proporciona dos estructuras de datos asociativos: mapas y listas de palabras clave .

Los mapas son el tipo clave-valor Elixir (también llamado diccionario o hash en otros idiomas).

Las listas de palabras clave son tuplas de clave / valor que asocian un valor a una clave determinada. Generalmente se utilizan como opciones para una llamada de función.

Creando un Mapa

Los mapas son el tipo clave-valor Elixir (también llamado diccionario o hash en otros idiomas). Usted crea un mapa usando la sintaxis %w{} :

%{} // creates an empty map
%{:a => 1, :b => 2} // creates a non-empty map

Las claves y valores pueden ser de cualquier tipo:

%{"a" => 1, "b" => 2}
%{1 => "a", 2 => "b"}

Además, puedes tener mapas con tipos mixtos tanto para claves como para valores ":

// keys are integer or strings
%{1 => "a", "b" => :foo}
// values are string or nil
%{1 => "a", 2 => nil}

Cuando todas las claves de un mapa son átomos, puede usar la sintaxis de las palabras clave para su comodidad:

%{a: 1, b: 2}

Creación de una lista de palabras clave

Las listas de palabras clave son tuplas de clave / valor, generalmente utilizadas como opciones para una llamada de función.

[{:a, 1}, {:b, 2}] // creates a non-empty keyword list

Las listas de palabras clave pueden tener la misma clave repetida más de una vez.

[{:a, 1}, {:a, 2}, {:b, 2}]
[{:a, 1}, {:b, 2}, {:a, 2}]

Las claves y valores pueden ser de cualquier tipo:

[{"a", 1}, {:a, 2}, {2, "b"}]

Diferencia entre mapas y listas de palabras clave

Los mapas y las listas de palabras clave tienen diferentes aplicaciones. Por ejemplo, un mapa no puede tener dos claves con el mismo valor y no está ordenado. Por el contrario, una lista de palabras clave puede ser un poco difícil de usar en la coincidencia de patrones en algunos casos.

Aquí hay algunos casos de uso para mapas y listas de palabras clave.

Use listas de palabras clave cuando:

  • Necesitas los elementos a ordenar.
  • Necesitas más de un elemento con la misma llave.

Usa mapas cuando:

  • quieres un patrón de coincidencia con algunas claves / valores
  • No necesitas más de un elemento con la misma llave.
  • siempre que no necesite explícitamente una lista de palabras clave


Modified text is an extract of the original Stack Overflow Documentation
Licenciado bajo CC BY-SA 3.0
No afiliado a Stack Overflow