go语言之map
Posted bainianminguo
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言之map相关的知识,希望对你有一定的参考价值。
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]
以上是关于go语言之map的主要内容,如果未能解决你的问题,请参考以下文章