map
来源:互联网 发布:2016赛季林书豪数据 编辑:程序博客网 时间:2024/06/06 00:02
声明
直接上代码:
func main(){ //声明map变量 var testMap map[int] string if testMap == nil { fmt.Println("map is nil") } //直接使用 testMap[1] = "test1" testMap[2] = "test2" fmt.Println("map:", testMap)}
运行结果:
winterdeMacBook-Pro:test winter$ go build mapTest.gowinterdeMacBook-Pro:test winter$ ./mapTestmap is nilpanic: assignment to entry in nil mapgoroutine 1 [running]:main.main() /Users/winter/code/go_project/src/test/mapTest.go:14 +0x66
结论:
- 声明的map变量是nil,不可以直接使用,必须要初始化
初始化、定义
可以通过make初始化
package mainimport ( "fmt")func main(){ //声明map变量 var testMap map[int] string if testMap == nil { fmt.Println("map is nil") } //初始化 testMap = make(map[int] string) testMap[1] = "test1" testMap[2] = "test2" fmt.Println("map:", testMap)}
运行结果:
winterdeMacBook-Pro:test winter$ go build mapTest.gowinterdeMacBook-Pro:test winter$ ./mapTestmap is nilmap: map[1:test1 2:test2]
也可以直接定义:
mapTest := make(map[int] string)
增加元素
直接插入key-value
testMap[1] = "chen"
查找
_, ok := testMap[1]if ok { fmt.Printf("key:%d, value:%s\n", 1, testMap[1])} else { fmt.Printf("key %d not exsit\n", 1)}
遍历
通过range来遍历
for k, v := range testMap { fmt.Printf("key:%d, value:%s\n", k, v)}
删除
直接delete
delete(testMap, 1)
阅读全文
0 0
- map
- MAP
- map
- MAP
- map
- map
- map
- Map
- Map
- Map
- map
- map
- Map
- .map
- map
- MAP
- map
- Map
- linux安装showdoc——让你避过大坑
- 如何将现有的/home目迁移新的单独分区上,或者其它目录迁移到别的分区
- angular服务——$http
- 随想
- spring-mybatis整合xml配置
- map
- Java初窥:JDK1.8中的日期处理
- 深度解析京东个性化推荐系统演进史
- 函数模版与类模版template
- java中进行字符串替换.replace() .indexOf() .lastIndexOf() .substring()
- SpringBoot集成Swagger2
- 天堂里的游戏 51Nod
- Oracle数据库中 to_date()函数的用法
- 第七届蓝桥杯大赛个人赛省赛C++ A组 (第九题 密码脱落)