Go-Map
2021-03-29 本文已影响0人
SodaCrush
go map
golang中的map是一种(无序的)key-value形式的数据结构,类似python中的字典,默认初始值为nil,map是引用类型,必须初始化才能使用。
map创建
直接创建/通过make创建
通过make创建时 make(map[keyType]valueType, [cap])
, cap可省略
var userMap = map[String]String{
"name": "admin",
"password": "password",
}
codeMap := make(map[String]String)
codeMap["golang"] = "golang"
codeMap["java"] = "java"
codeMap["python"] = "python"
fmt.Printf("Type of codeMap:%T\n", codeMap)
判断key是否存在
map中获取不存在的key时,不会报错,得到的是指定key类型的0值
// 判断ok来确定key是否存在
value, ok := targetMap[key]
删除key
delete(targetMap, key)
遍历map
由于map属于无序类型,在遍历输出时,key-value会无序输出
for k,v := range targetMap{
fmt.Println(k, v)
}