Heim  >  Artikel  >  Backend-Entwicklung  >  So ändern Sie die Golang-Karte

So ändern Sie die Golang-Karte

青灯夜游
青灯夜游Original
2022-12-26 09:53:475455Durchsuche

Änderungsmethode: 1. Verwenden Sie die Anweisung „map[“key“]=value“, um Elemente hinzuzufügen oder zu aktualisieren. Wenn „key“ nicht vorhanden ist, fügen Sie das Element hinzu. Verwenden Sie die Funktion delete(), um das angegebene Schlüssel-Wert-Paar aus der Karte zu löschen. Die Syntax lautet „delete(map, keyname)“. 3. Erstellen Sie ein neues Kartenobjekt, das alle Elemente in der Karte löschen kann, die Syntax ist „var Mapname Map[Schlüsseltyp] Werttyp“.

So ändern Sie die Golang-Karte

Die Betriebsumgebung dieses Tutorials: Windows 7-System, GO Version 1.18, Dell G3-Computer.

In der Go-Sprache ist Map eine spezielle Datenstruktur, eine ungeordnete Sammlung von Elementpaaren (Paar), die einem Schlüssel (Index) und einem Wert (Wert) entspricht, daher wird diese Struktur auch als assoziatives Array oder Wörterbuch bezeichnet. Dies ist eine ideale Struktur, mit der Werte schnell gefunden werden können. Bei gegebenem Schlüssel kann der entsprechende Wert schnell gefunden werden.

map Diese Datenstruktur wird in anderen Programmiersprachen auch Wörterbuch (Python), Hash, HashTable usw. genannt.

Einführung von Map

【1】Map, ein in die Go-Sprache integrierter Typ, der Schlüssel-Wert-Paare verknüpft. Wir können den entsprechenden Wert über den Schlüssel erhalten. Ähnlich wie Sammlungen in anderen Sprachen
So ändern Sie die Golang-Karte

【2】Grundlegende Syntax

var map变量名 map[keytype]valuetype

PS: Schlüssel- und Werttypen: Bool, Zahl, Zeichenfolge, Zeiger, Kanal, oder es kann sich auch um eine Schnittstelle oder Struktur handeln, die nur die vorherigen Typen enthält . Array
PS: Der Schlüssel ist normalerweise int, String-Typ und der Wert ist normalerweise eine Zahl (Ganzzahl, Gleitkommazahl), String, Map, Struktur
PS: Schlüssel: Slice, Map, Funktion sind nicht erlaubt

[ 3] Code:

Eigenschaften der Karte:

(1) Die Kartensammlung muss vor der Verwendung erfolgen. (2) Der Schlüsselwert der Karte ist ungeordnet.
(3) Der Schlüssel kann nicht wiederholt werden Der Wert wird sein. Ersetzen Sie den vorherigen Wert.
(4) Der Wert kann wiederholt werden.

package main
import "fmt"
func main(){
        //定义map变量:
        var a map[int]string
        //只声明map内存是没有分配空间
        //必须通过make函数进行初始化,才会分配空间:
        a = make(map[int]string,10) //map可以存放10个键值对
        //将键值对存入map中:
        a[20095452] = "张三"
        a[20095387] = "李四"
        a[20097291] = "王五"
        a[20095387] = "朱六"
        a[20096699] = "张三"
        //输出集合
        fmt.Println(a)
}
. Operationen hinzufügen und aktualisieren:

map["key"]= value ——》Wenn der Schlüssel nicht vorhanden ist, wird er hinzugefügt, wenn der Schlüssel vorhanden ist, wird er geändert. 【2】Löschvorgang: delete(map, "key") , delete ist eine integrierte Funktion. Wenn der Schlüssel vorhanden ist, löschen Sie den Schlüsselwert existiert nicht, kein Vorgang, aber es wird kein Fehler gemeldet

2 .png【3】Löschvorgang: (1) Wenn wir alle Schlüssel der Karte löschen möchten, gibt es keine spezielle Möglichkeit, sie auf einmal zu löschen. Wir können die durchqueren Schlüssel und löschen Sie sie einzeln

(2) oder map = make(...), erstellen Sie ein neues, lassen Sie das Original zu Müll werden und von gc recycelt werden

[4] Suchvorgang: map[“key”]= value ——》 如果key还没有,就是增加,如果key存在就是修改。

【2】删除操作:

delete(map,“key”) , delete是一个内置函数,如果key存在,就删除该key-value,如果k的y不存在,不操作,但是也不会报错

So ändern Sie die Golang-Karte

【3】清空操作:

(1)如果我们要删除map的所有key ,没有一个专门的方法一次删除,可以遍历一下key,逐个删除

(2)或者map = make(…)

value, bool = map[key]

value ist der zurückgegebene Wert, bool gibt an, ob zurückgegeben werden soll, entweder true oder false

 package main
import "fmt"
func main(){
        //方式1:
        //定义map变量:
        var a map[int]string
        //只声明map内存是没有分配空间
        //必须通过make函数进行初始化,才会分配空间:
        a = make(map[int]string,10) //map可以存放10个键值对
        //将键值对存入map中:
        a[20095452] = "张三"
        a[20095387] = "李四"
        //输出集合
        fmt.Println(a)
        //方式2:
        b := make(map[int]string)
        b[20095452] = "张三"
        b[20095387] = "李四"
        fmt.Println(b)
        //方式3:
        c := map[int]string{
                20095452 : "张三",
                20098765 : "李四",
        }
        c[20095387] = "王五"
        fmt.Println(c)
}

【5】Länge abrufen: len-Funktion

【6】Traverse: for -range

package main
import "fmt"
func main(){
        //定义map
        b := make(map[int]string)
        //增加:
        b[20095452] = "张三"
        b[20095387] = "李四"
        //修改:
        b[20095452] = "王五"
        //删除:
        delete(b,20095387)
        delete(b,20089546)
        fmt.Println(b)
        //查找:
        value,flag := b[200]
        fmt.Println(value)
        fmt.Println(flag)
}

【Verwandte Empfehlungen:

Go-Video-Tutorial

,

Programmierunterricht

Das obige ist der detaillierte Inhalt vonSo ändern Sie die Golang-Karte. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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