go语言的map就相当于python的dict
1、map的初始化
//创建map
//k的类型是int,v的类型是string
var test25_1 map[int]string
fmt.Println(test25_1)
//map[]
fmt.Println(test25_1 == nil)
//true
test25_2 := map[int]string{}
test25_3 := make(map[int]string)
fmt.Println(test25_2)
//map[]
fmt.Println(test25_3)
//map[]
//初始化一个有容量的map
test25_4 := make(map[int]string,10)
fmt.Println(test25_4)
//map[]
//初始化map
2、map的初始化
//定义的同时初始化
var test25_5 map[int] string = map[int]string{1:"test1",2:"test2"}
fmt.Println(test25_5)
//map[1:test1 2:test2]
//自动推倒类型
var test25_6 = map[int]string{3:"test3",4:"test4"}
fmt.Println(test25_6)
//map[3:test3 4:test4]
3、map的键值操作,增和改
//键值操作 //修改 test25_6[3] = "test333" fmt.Println(test25_6) //map[3:test333 4:test4] //增加 test25_6[5] = "test5" fmt.Println(test25_6) //map[3:test333 4:test4 5:test5]
4、map的遍历操作
//map的遍历操作
for k,v := range test25_6{
fmt.Printf("k值为%d,v值为%s\n",k,v)
}
//k值为5,v值为test5
//k值为3,v值为test333
//k值为4,v值为test
for k:= range test25_6{
fmt.Printf("k值为%d,v值为%s\n",k,test25_6[k])
}
//k值为3,v值为test333
//k值为4,v值为test4
//k值为5,v值为test5
5、判断map是否存在某个k
//判断某个k对应的v是否存在 //value为k对应的值,ok为是否存在 value,ok := test25_6[3] fmt.Println(value,ok) //test333 true value1,ok1 := test25_6[7] fmt.Println(value1,ok1) //false
6、删除map中的某个k
fmt.Println(test25_6) //map[3:test333 4:test4 5:test5] delete(test25_6,3) fmt.Println(test25_6) //map[4:test4 5:test5]
原文:https://www.cnblogs.com/bainianminguo/p/10865353.html