Elixir Language
Cartes et listes de mots clés
Recherche…
Syntaxe
- map =% {} // crée une carte vide
- map =% {: a => 1,: b => 2} // crée une carte non vide
- list = [] // crée une liste vide
- list = [{: a, 1}, {: b, 2}] // crée une liste de mots-clés non vide
Remarques
Elixir fournit deux structures de données associatives: les cartes et les listes de mots clés .
Les cartes sont du type clé-valeur Elixir (également appelé dictionnaire ou hachage dans d'autres langues).
Les listes de mots-clés sont des tuples de clé / valeur qui associent une valeur à une clé donnée. Ils sont généralement utilisés comme options pour un appel de fonction.
Créer une carte
Les cartes sont du type clé-valeur Elixir (également appelé dictionnaire ou hachage dans d'autres langues). Vous créez une carte en utilisant la syntaxe %w{}
:
%{} // creates an empty map
%{:a => 1, :b => 2} // creates a non-empty map
Les clés et les valeurs peuvent utiliser n'importe quel type:
%{"a" => 1, "b" => 2}
%{1 => "a", 2 => "b"}
De plus, vous pouvez avoir des cartes avec des types mixtes pour les clés et les valeurs ":
// keys are integer or strings
%{1 => "a", "b" => :foo}
// values are string or nil
%{1 => "a", 2 => nil}
Lorsque toutes les clés d'une carte sont des atomes, vous pouvez utiliser la syntaxe du mot clé pour plus de commodité:
%{a: 1, b: 2}
Création d'une liste de mots clés
Les listes de mots-clés sont des tuples de clé / valeur, généralement utilisés comme options pour un appel de fonction.
[{:a, 1}, {:b, 2}] // creates a non-empty keyword list
La même clé peut être répétée plusieurs fois.
[{:a, 1}, {:a, 2}, {:b, 2}]
[{:a, 1}, {:b, 2}, {:a, 2}]
Les clés et les valeurs peuvent être de tout type:
[{"a", 1}, {:a, 2}, {2, "b"}]
Différence entre les cartes et les listes de mots clés
Les cartes et les listes de mots-clés ont une application différente. Par exemple, une carte ne peut pas avoir deux clés de même valeur et elle n'est pas ordonnée. Inversement, une liste de mots-clés peut être un peu difficile à utiliser dans certains cas.
Voici quelques cas d'utilisation pour les cartes et les listes de mots clés.
Utilisez les listes de mots-clés lorsque:
- vous avez besoin des éléments à commander
- vous avez besoin de plus d'un élément avec la même clé
Utilisez des cartes lorsque:
- vous voulez faire correspondre les modèles à certaines clés / valeurs
- vous n'avez pas besoin de plus d'un élément avec la même clé
- chaque fois que vous n'avez pas explicitement besoin d'une liste de mots clés