Golang iteriert über Karte

Golang iteriert über Karte
Eine Karte ist eine ungeordnete Sammlung von Schlüsselwertpaaren. Karten sind schnell und effizient für schnelle Lookups, Updates und Löschungen mit den einzigartigen Schlüssel.

Daher kann das Lernen, wie man mit Karten arbeitet, als GO -Entwickler von entscheidender Bedeutung sein. In diesem Artikel wird versucht, ein paar Fragen zu Karten in der Go -Programmiersprache zu beantworten.

So erstellen Sie eine Karte

Sie können eine Karte in Go über die unten gezeigte Syntax erstellen:

MAP [KEY_DATA_TYPE] value_data_type

Wir beginnen mit der Keyword -Karte, gefolgt vom Datentyp des Schlüssels. Als nächstes setzen wir den Datentyp für die Werte und schließlich ein Paar lockiger Klammern.

Die obige Syntax erstellt eine leere Karte.

Um beispielsweise eine leere Karte mit Int -Typ als Tasten- und String -Typ als Werte zu erstellen, können wir dies tun:

var my_map map [int] String

Wenn Sie keine leere Karte möchten, können Sie während der Erstellung Werte wie unten gezeigt zuweisen:

var my_map map [int] String 1: "A", 2: "B", 3: "C", 4: "D"

Die zweite Methode zum Erstellen einer Karte ist die buchstäbliche GO -Karte. Ein Beispiel ist wie gezeigt:

my_map: = map [int] String

Das obige erstellt eine leere Karte.

GO bietet Ihnen auch die Methode make (), mit der Sie eine Karte erstellen können. Das folgende Beispiel erstellt eine leere Karte von String-Float-Paaren.

my_map: = map [string] float64

So drucken Sie eine Karte

Die einfachste Operation, die Sie mit einer Karte ausführen können, besteht darin, sie auszudrucken. Dafür können wir die Println -Methode aus dem FMT -Paket verwenden.

Paket Main
importieren "fmt"
funcmain ()
my_map: = map [int] String
1: "a",
2: "B",
3: "C",
4: "D",
5: "E",

fmt.Println (my_map)

Der obige Code sollte die in der Variable "my_map" gespeicherte Karte drucken. Die resultierende Ausgabe ist wie gezeigt:

Karte [1: A 2: B 3: C 4: D 5: E]

Wie man über Schlüssel und Werte einer Karte iteriert

Durch die Iterie über eine Karte werden jedes aufeinanderfolgende Schlüsselwertpaar in der Karte erhalten. Wir können dies mit dem Klassiker für Loop und Range Operator erreichen.

Ein Beispiel ist wie gezeigt:

my_map: = map [int] String
1: "a",
2: "B",
3: "C",
4: "D",
5: "E",

Für Schlüssel, Wert: = Bereich my_map
fmt.Printf ("Schlüssel: %d Wert: %s \ n", Schlüssel, Wert)

In Go gibt es zwei Werte zurück: Der Schlüssel und den Wert gibt den Bereich des Bereichs auf einer Karte zurück: Der Schlüssel und den Wert. Durch die Verwendung der For -Loop können wir jeden Schlüssel und Wert in die Karte erhalten.

Die resultierende Ausgabe:

Schlüssel: 5 Wert: e
Schlüssel: 1 Wert: a
Schlüssel: 2 Wert: B
Schlüssel: 3 Wert: C
Schlüssel: 4 Wert: D

Wie man Schlüssel nur in einer Karte iterieren

Wie bereits erwähnt, gibt die Verwendung des Bereichs Operator über eine Karte die Schlüssel- und Wertpaare zurück. Wir können jedoch nur einen Wert abrufen, wie unten gezeigt:

Für Schlüssel: = Bereich my_map
fmt.Println ("Schlüssel:", Schlüssel)

Das obige Beispiel sollte nur die Schlüssel in der Karte zurückgeben als:

Schlüssel: 2
Schlüssel: 3
Schlüssel: 4
Schlüssel: 5
Schlüssel: 1

Wie man Werte in einer Karte iterieren

In ähnlicher Weise können Sie die Werte der Karte mit der folgenden Syntax abrufen:

Für _, Wert: = Bereich my_map
fmt.Println ("Wert:", Wert)

Ausgang:

Wert: a
Wert: b
Wert: c
Geschätzt
Wert: e

Abschluss

Sie können den Schlüssel und die Werte einer Karte mit dem Bereich Operator itererieren. Sie können auch filtern und nur die in diesem Handbuch angezeigten Schlüssel oder Werte abrufen.

Glückliche Codierung!