Ausführliche Erläuterung der Verwendung der Karte in der Golang-Sprache

PHPz
Freigeben: 2023-03-30 13:47:33
Original
2021 Leute haben es durchsucht

Golang (auch bekannt als Go) hat sich in den letzten Jahren zu einer Programmiersprache entwickelt, die insbesondere in den Bereichen Netzwerkprogrammierung und gleichzeitige Programmierung große Aufmerksamkeit erregt hat. Die Go-Sprache bietet eine benutzerfreundliche und effiziente Datenstrukturkarte, die es Entwicklern ermöglicht, Schlüssel-Wert-Paare einfach zu speichern und zu verarbeiten.

In diesem Artikel wird die Verwendung von Map in der Golang-Sprache vorgestellt, einschließlich der Definition und Initialisierung von Map, der Bedienung von Map und der Best Practices für die Verwendung von Map.

Was ist eine Karte?

In der Computerprogrammierung ist Map ein abstrakter Datentyp, der auch assoziatives Array, Hash-Tabelle oder Wörterbuch genannt wird. Map bietet eine Speichermethode für Schlüssel-Wert-Paare, mit der der entsprechende Wert eines Schlüssels schnell gefunden, aktualisiert und gelöscht werden kann.

In Golang ist Karte ein Referenztyp und sein Nullwert ist Null. Um einen Kartentyp zu definieren, können Sie die folgende Syntax verwenden:

var m map[keyType]valueType
Nach dem Login kopieren

Dabei repräsentiert keyType den Typ des Schlüssels und valueType den Typ des Werts. Um eine Karte zu definieren, die keine Elemente enthält, können Sie die folgende Syntax verwenden:

var m map[keyType]valueType{}
Nach dem Login kopieren

Karte initialisieren

Golang bietet zwei Möglichkeiten, die Karte zu initialisieren: die Verwendung der Make-Funktion und die Verwendung einer literalen Initialisierung.

Verwenden Sie die Make-Funktion, um die Karte zu initialisieren.

Verwenden Sie die Make-Funktion, um die Karte zu initialisieren. Sie können die folgende Syntax verwenden:

m := make(map[keyType]valueType)
Nach dem Login kopieren

Diese Funktion gibt eine neue, leere Karte zurück. Um beispielsweise eine Map mit String-Typen als Schlüssel und Integer-Typen als Werte zu definieren, können Sie den folgenden Code verwenden:

m := make(map[string]int)
Nach dem Login kopieren

Verwenden Sie Literale, um die Map zu initialisieren

Verwenden Sie Literale, um die Map zu initialisieren. Sie können die folgende Syntax verwenden:

m := map[keyType]valueType{
    key1: value1,
    key2: value2,
    ...
    keyN: valueN,
}
Nach dem Login kopieren

Wobei Schlüssel1, Schlüssel2...SchlüsselN Schlüssel sind, Wert1, Wert2...WertN Werte sind. Um beispielsweise eine Karte mit einem Zeichenfolgentyp als Schlüssel und einem Ganzzahltyp als Wert zu definieren und zwei Elemente zu initialisieren, können Sie den folgenden Code verwenden:

m := map[string]int{
    "apple": 4,
    "banana": 6,
}
Nach dem Login kopieren

Operationskarte

In Golang umfassen Kartenoperationen das Hinzufügen, Löschen, Suchen und Ändern .

Elemente hinzufügen

Um Elemente zur Karte hinzuzufügen, können Sie die folgende Syntax verwenden:

m[key] = value
Nach dem Login kopieren

wobei key der Schlüssel des hinzuzufügenden Elements und value der entsprechende Wert ist. Um beispielsweise ein Element mit dem Schlüssel „orange“ und dem oben definierten Wert 3 zu m hinzuzufügen, können Sie den folgenden Code verwenden:

m["orange"] = 3
Nach dem Login kopieren

Element löschen

Um ein Element aus der Karte zu löschen, können Sie die folgende Syntax verwenden :

delete(m, key)
Nach dem Login kopieren

wobei „key“ der Schlüssel des zu löschenden Elements ist. Um beispielsweise ein Element mit dem Schlüssel „banana“ aus dem oben definierten m zu löschen, können Sie den folgenden Code verwenden:

delete(m, "banana")
Nach dem Login kopieren

Um ein Element zu finden

Um ein Element aus einer Karte zu finden, können Sie die folgende Syntax verwenden:

value, ok := m[key]
Nach dem Login kopieren

wobei key das ist, was Sie suchen möchten Der Schlüssel des Elements, value ist der entsprechende Wert und ok gibt an, ob das Element gefunden wurde. Um beispielsweise ein Element mit dem Schlüssel „apple“ aus dem oben definierten m zu finden, können Sie den folgenden Code verwenden:

value, ok := m["apple"]
if ok {
    fmt.Println(value) // 4
}
Nach dem Login kopieren

Elemente ändern

Um Elemente in der Karte zu ändern, können Sie dieselbe Syntax wie beim Hinzufügen von Elementen verwenden:

m[key] = newValue
Nach dem Login kopieren

wobei „key“ der Schlüssel des zu ändernden Elements und „newValue“ der entsprechende neue Wert ist. Um beispielsweise den Wert des Elements mit dem oben definierten Schlüssel „orange“ in m auf 2 zu ändern, können Sie den folgenden Code verwenden:

m["orange"] = 2
Nach dem Login kopieren

Best Practices

Bei der Verwendung von Map müssen Sie auf mehrere Best Practices achten Praktiken:

  • Wenn Sie eine Karte deklarieren und initialisieren, verwenden Sie immer die Make-Funktion und geben Sie die Kapazität der Karte an.
  • Verwenden Sie beim Durchqueren der Karte immer das Schlüsselwort „range“, um die Probleme bei der Verwendung der For-Schleifenindizierung zu vermeiden.
  • Wenn Sie herausfinden, ob ein Element in der Karte vorhanden ist, verwenden Sie nicht die len-Funktion, da diese die gesamte Karte durchläuft und keine effiziente Methode ist.

Insgesamt ist Map in Golang eine sehr nützliche Datenstruktur, mit der Schlüssel-Wert-Paare schnell gespeichert und gefunden werden können. Wenn Sie die Verwendung von Maps beherrschen, verbessern Sie Ihre Programmiereffizienz und Codequalität erheblich.

Das obige ist der detaillierte Inhalt vonAusführliche Erläuterung der Verwendung der Karte in der Golang-Sprache. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage