Comment utiliser les types de mapping en langage Go ?
Dans le langage Go, la carte est une structure de données intégrée utilisée pour stocker des paires clé-valeur. Les cartes permettent une récupération rapide des valeurs par clé, à l'instar des dictionnaires ou des tables de hachage dans d'autres langues. Dans cet article, nous présenterons les concepts de base des types de cartes en langage Go et comment utiliser les cartes pour stocker et récupérer des données.
Pour créer une carte, vous pouvez utiliser la fonction make
du langage Go pour initialiser une carte vide et spécifier les types de clé et de valeur. Voici un exemple simple : make
函数来初始化一个空的映射,并指定键和值的类型。下面是一个简单的示例:
package main import "fmt" func main() { // 创建一个映射,键是字符串类型,值是整数类型 m := make(map[string]int) // 添加键值对到映射中 m["apple"] = 10 m["banana"] = 5 fmt.Println(m) // 输出map[apple:10 banana:5] }
在上面的示例中,我们创建了一个映射m
,键的类型是字符串,值的类型是整数。然后,我们向映射中添加了两组键值对,分别是apple:10
和banana:5
。最后,使用fmt.Println
函数输出整个映射。
要访问映射中的元素,可以通过键来索引映射。如果键存在,则会返回对应的值;如果键不存在,则会返回值类型的零值。示例如下:
package main import "fmt" func main() { m := make(map[string]int) m["apple"] = 10 m["banana"] = 5 // 访问映射中的元素 fmt.Println("apple:", m["apple"]) // 输出:apple: 10 fmt.Println("orange:", m["orange"]) // 输出:orange: 0 }
在上面的示例中,我们访问了映射中的apple
和orange
键的值,如果键存在,则打印对应的值;如果键不存在,则打印值类型的零值。
如果需要修改映射中的元素,只需通过键重新赋值即可。示例如下:
package main import "fmt" func main() { m := make(map[string]int) m["apple"] = 10 fmt.Println("apple:", m["apple"]) // 输出:apple: 10 m["apple"] = 20 // 修改键值对 fmt.Println("apple:", m["apple"]) // 输出:apple: 20 }
在上面的示例中,我们将映射中apple
键的值从10修改为20,并输出修改后的结果。
可以使用delete
函数来删除映射中的元素。示例如下:
package main import "fmt" func main() { m := make(map[string]int) m["apple"] = 10 fmt.Println("apple:", m["apple"]) // 输出:apple: 10 delete(m, "apple") // 删除键值对 fmt.Println("apple:", m["apple"]) // 输出:apple: 0 }
在上面的示例中,我们使用delete
函数删除了映射中的apple
键值对,然后访问apple
键时会返回值类型的零值。
可以使用for range
语句来迭代映射中的键值对。示例如下:
package main import "fmt" func main() { m := make(map[string]int) m["apple"] = 10 m["banana"] = 5 // 遍历映射 for k, v := range m { fmt.Println(k, ":", v) } }
在上面的示例中,我们使用for range
语句遍历了映射m
rrreee
m
avec des clés de type string et des valeurs de type entier. Ensuite, nous avons ajouté deux ensembles de paires clé-valeur à la carte, à savoir apple:10
et banana:5
. Enfin, utilisez la fonction fmt.Println
pour afficher la carte entière. Accéder et modifier des éléments dans une cartePour accéder aux éléments d'une carte, vous pouvez indexer la carte par clé. Si la clé existe, la valeur correspondante sera renvoyée ; si la clé n'existe pas, une valeur zéro du type valeur sera renvoyée. Un exemple est le suivant : apple
et orange
dans la carte. Si la clé existe, imprimez. la valeur correspondante si Si la clé n'existe pas, une valeur zéro du type valeur est imprimée. apple
dans la carte de 10 à 20 et générons le résultat modifié. delete
pour supprimer des éléments de la carte. Un exemple est le suivant : 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons la fonction delete
pour supprimer la paire clé-valeur apple
dans la carte, puis accédons à apple
renverra la valeur zéro du type valeur. 🎜🎜Itérer la carte🎜🎜Vous pouvez utiliser l'instruction for range
pour itérer les paires clé-valeur dans la carte. Un exemple est le suivant : 🎜rrreee🎜Dans l'exemple ci-dessus, nous utilisons l'instruction for range
pour parcourir toutes les paires clé-valeur de la carte m
et afficher les clés et valeurs dans l'ordre. 🎜🎜Notes🎜🎜Lors de l'utilisation du mappage, vous devez faire attention aux points suivants : 🎜🎜🎜Map est un type de référence et stocke les références aux paires clé-valeur, donc passer la carte lors de l'appel d'une fonction ne produira pas de copie. 🎜🎜Les clés de la carte doivent être de types comparables, tels que les types de base, les types de pointeurs, les types de tableaux, les types de structure, etc. 🎜🎜Les valeurs de la carte peuvent être de n'importe quel type, y compris des fonctions, des tranches, des cartes, etc. 🎜🎜🎜Résumé : Cet article explique comment créer, accéder, modifier, supprimer et itérer des types de cartes en langage Go. Grâce à l'introduction des opérations de base et des précautions de cartographie, les lecteurs peuvent mieux comprendre et utiliser la structure des données cartographiques dans le langage Go. J'espère que cet article vous sera utile. 🎜Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!