Golang-Kartenerhöhung

WBOY
Freigeben: 2023-05-18 22:59:07
Original
1511 Leute haben es durchsucht

Golang ist eine sehr beliebte Programmiersprache, die für die Verarbeitung großer Datenmengen beliebt ist. Die Karte ist eine effiziente Datenstruktur zum Speichern von Schlüssel-Wert-Paaren, die eine schnelle Suche und einen schnellen Abruf ermöglicht. Obwohl die Verwendung von Map sehr praktisch ist, kann es in tatsächlichen Anwendungen vorkommen, dass neue Schlüssel-Wert-Paare hinzugefügt werden müssen. Wie können Sie also neue Schlüssel-Wert-Paare zur Golang-Karte hinzufügen? In diesem Artikel werden Ihnen drei Methoden vorgestellt.

Methode 1: Direkte Zuweisung

In Golang besteht der einfachste Weg, ein neues Schlüssel-Wert-Paar zu einer Karte hinzuzufügen, darin, dem Zielschlüssel direkt einen Wert zuzuweisen. Dies kann mit dem folgenden Code erreicht werden:

package main

import "fmt"

func main() {
    // 声明并初始化map
    scores := make(map[string]int)
    scores["Tom"] = 90
    scores["Jerry"] = 80
    scores["Alice"] = 95
    
    fmt.Println(scores)
    
    // 增加新键值对
    scores["Bob"] = 85
    
    fmt.Println(scores)
}
Nach dem Login kopieren

Die laufenden Ergebnisse sind wie folgt:

map[Tom:90 Jerry:80 Alice:95]
map[Tom:90 Jerry:80 Alice:95 Bob:85]
Nach dem Login kopieren
Nach dem Login kopieren

Im obigen Code initialisieren wir zunächst eine Karte, die drei Schlüssel-Wert-Paare enthält. Anschließend fügen wir ein neues Schlüssel-Wert-Paar hinzu, indem wir einem neuen Schlüssel einen Wert zuweisen. Abschließend drucken wir die vollständige hinzugefügte Karte aus, die die ursprünglichen drei Schlüssel-Wert-Paare und das neue Schlüssel-Wert-Paar enthält.

Diese Methode eignet sich zum Hinzufügen neuer Schlüssel-Wert-Paare zur Karte. Durch Schleifenanweisungen können je nach tatsächlichem Bedarf schnell mehrere Schlüssel-Wert-Paare hinzugefügt werden. Bitte beachten Sie jedoch, dass sein Wert überschrieben wird, wenn der von uns zugewiesene Schlüssel bereits in der Karte vorhanden ist.

Methode 2: Update-Methode der Karte verwenden

In Golang gibt es auch eine spezielle Methode, mit der gleichzeitig festgestellt werden kann, ob ein Schlüssel vorhanden ist, und neue Schlüssel-Wert-Paare hinzugefügt werden können. Diese Methode verwendet die Update-Methode von Map und der Implementierungscode lautet wie folgt:

package main

import "fmt"

func main() {
    // 声明并初始化map
    scores := make(map[string]int)
    scores["Tom"] = 90
    scores["Jerry"] = 80
    scores["Alice"] = 95
    
    fmt.Println(scores)
    
    // 增加新键值对
    updateMap("Bob", 85, &scores)
    
    fmt.Println(scores)
}

func updateMap(key string, value int, scores *map[string]int) {
    if _, ok := (*scores)[key]; !ok {
        (*scores)[key] = value
    }
}
Nach dem Login kopieren

Die laufenden Ergebnisse lauten wie folgt:

map[Tom:90 Jerry:80 Alice:95]
map[Tom:90 Jerry:80 Alice:95 Bob:85]
Nach dem Login kopieren
Nach dem Login kopieren

Im obigen Code definieren wir eine updateMap-Funktion, die drei Parameter akzeptiert: Schlüssel, Wert und ein Zeiger auf die Karte. Innerhalb der Funktion verwenden wir die Update-Methode von Map, um zu ermitteln, ob der hinzuzufügende Schlüssel bereits vorhanden ist, und formulieren ein neues Schlüssel-Wert-Paar, falls er nicht vorhanden ist. Abschließend rufen wir die Funktion updateMap auf, um der Karte ein neues Schlüssel-Wert-Paar hinzuzufügen.

Obwohl diese Methode etwas komplizierter als die erste Methode ist, ist sie flexibler. Dadurch können wir beim Hinzufügen eines neuen Schlüssels zusätzliche Vorgänge ausführen, z. B. den Wert eines vorhandenen Schlüssel-Wert-Paares aktualisieren oder die Details des neuen Schlüssel-Wert-Paares ausdrucken.

Methode 3: Verwenden Sie den Zuweisungsoperator von Map

Eine andere Methode besteht darin, den Zuweisungsoperator von Golang Map zu verwenden. Der Implementierungscode lautet wie folgt:

package main

import "fmt"

func main() {
    // 声明并初始化map
    scores := make(map[string]int)
    scores["Tom"] = 90
    scores["Jerry"] = 80
    scores["Alice"] = 95
    
    fmt.Println(scores)
    
    // 增加新键值对
    scores = map[string]int{
        "Bob": 85,
    }
    
    fmt.Println(scores)
}
Nach dem Login kopieren

Das laufende Ergebnis lautet wie folgt:

map[Tom:90 Jerry:80 Alice:95]
map[Bob:85]
Nach dem Login kopieren

In dieser Methode haben wir Verwenden Sie den Map-Direkt-Zuweisungsoperator, um neue Schlüssel-Wert-Paare hinzuzufügen. In diesem Beispiel initialisieren wir zunächst eine Karte mit der Funktion „make“ und verwenden dann den Kartenzuweisungsoperator, um der Karte neue Schlüssel-Wert-Paare hinzuzufügen. Ähnlich wie bei der ersten Methode kann diese Methode auch verwendet werden, um neue Schlüssel-Wert-Paare stapelweise in einer Schleife hinzuzufügen.

Diese Methode ist einfacher als die ersten beiden Methoden, eignet sich jedoch nur zum Ersetzen der Originalkarte durch eine neue Karte. Wenn Sie einer vorhandenen Karte neue Schlüssel-Wert-Paare hinzufügen müssen, müssen Sie weiterhin die erste oder zweite Methode verwenden.

Zusammenfassend lässt sich sagen, dass die von diesen drei Methoden implementierten Funktionen darin bestehen, der Golang-Karte neue Schlüssel-Wert-Paare hinzuzufügen. Welche Methode zu wählen ist, hängt vom jeweiligen Szenario ab. Ich hoffe, der obige Inhalt ist hilfreich für Sie!

Das obige ist der detaillierte Inhalt vonGolang-Kartenerhöhung. 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!