Suche…


Syntax

  • map =% {} // erstellt eine leere Map
  • map =% {: a => 1,: b => 2} // erstellt eine nicht leere Map
  • list = [] // erstellt eine leere Liste
  • list = [{: a, 1}, {: b, 2}] // erstellt eine nicht leere Keyword-Liste

Bemerkungen

Elixir bietet zwei assoziative Datenstrukturen: Karten und Keyword-Listen .

Karten sind der Elixir-Schlüsselwert (in anderen Sprachen auch als Wörterbuch oder Hash bezeichnet).

Schlüsselwortlisten sind Schlüssel- / Wertetupel, die einem bestimmten Schlüssel einen Wert zuordnen. Sie werden im Allgemeinen als Optionen für einen Funktionsaufruf verwendet.

Karte erstellen

Karten sind der Elixir-Schlüsselwert (in anderen Sprachen auch als Wörterbuch oder Hash bezeichnet). Sie erstellen eine Map mit der %w{} -Syntax:

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

Schlüssel und Werte können beliebig sein:

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

Außerdem können Sie Karten mit gemischten Typen für Schlüssel und Werte erstellen ":

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

Wenn alle Schlüssel in einer Map aus Atomen bestehen, können Sie zur Vereinfachung die Schlüsselwortsyntax verwenden:

%{a: 1, b: 2}

Erstellen einer Keyword-Liste

Schlüsselwortlisten sind Schlüssel / Wert-Tupel, die normalerweise als Optionen für einen Funktionsaufruf verwendet werden.

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

Bei Schlüsselwortlisten kann derselbe Schlüssel mehrmals wiederholt werden.

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

Schlüssel und Werte können beliebig sein:

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

Unterschied zwischen Karten und Keyword-Listen

Karten und Keyword-Listen haben unterschiedliche Anwendung. Zum Beispiel kann eine Karte nicht zwei Schlüssel mit demselben Wert haben und sie ist nicht geordnet. Umgekehrt kann die Verwendung einer Keyword-Liste in bestimmten Fällen ein wenig schwierig sein.

Hier sind einige Anwendungsfälle für Karten- und Keyword-Listen.

Verwenden Sie Stichwortlisten, wenn:

  • Sie müssen die Elemente bestellen
  • Sie benötigen mehr als ein Element mit demselben Schlüssel

Karten verwenden, wenn:

  • Sie möchten mit einigen Schlüsseln / Werten ein Pattern-Match durchführen
  • Sie benötigen nicht mehr als ein Element mit demselben Schlüssel
  • wann immer Sie nicht explizit eine Keyword-Liste benötigen


Modified text is an extract of the original Stack Overflow Documentation
Lizenziert unter CC BY-SA 3.0
Nicht angeschlossen an Stack Overflow