Maison  >  Article  >  développement back-end  >  Comment étendre la hashmap de Golang

Comment étendre la hashmap de Golang

(*-*)浩
(*-*)浩original
2019-12-28 09:52:002802parcourir

Comment étendre la hashmap de Golang

Définir les variables de hashmap

Le langage go étant un langage fortement typé, le hashmap est également typé, spécifiquement reflété dans la clé et la valeur. Le type doit être spécifié. Par exemple, pour déclarer une clé sous forme de chaîne et une valeur sous forme de carte de chaîne, vous devez faire ceci : (Apprentissage recommandé : go)

var m map[string]string // 声明一个hashmap,还不能直接使用,必须使用make来初始化
m = make(map[string]string) // 初始化一个map
m = make(map[string]string, 3) // 初始化一个map并附带一个可选的初始bucket(非准确值,只是有提示意义)

m := map[string]string{} // 声明并初始化

m := make(map[string]string) // 使用make来初始化

get, set,delete

m := map[string]int
m["a"] = 1
fmt.Println(m["a"]) // 输出 1
// 如果访问一个不存在的key,返回类型默认值
fmt.Println(m["b"]) // 输出0
// 测试key是否存在
v, ok := m["b"]
if ok {
    ...
}
// 删除一个key
delete(m, "a")
迭代器
// 只迭代key
for k := range m {
    ...
}
// 同时迭代key-value
for k, v := range m {
    ...
}

Pendant le processus d'itération, la carte peut être supprimée et mise à jour. Les règles sont les suivantes :

L'itération n'est pas ordonnée, dans le. même ordre que l'insertion. Cela n'a rien à voir avec

La suppression d'une clé lors de l'itération de

ne passera pas à

, qu'elle ait été parcourue ou non. de

n'est pas sûr de pouvoir traverser vers

La carte non initialisée peut également être itérée

Autres

La valeur de la carte n'est pas adressable , ce qui signifie que la syntaxe de &m["a"] est illégale

len et cap peuvent respectivement obtenir le nombre de kv et la capacité totale de la carte actuelle

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!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Article précédent:Que peut faire Golang ?Article suivant:Que peut faire Golang ?