Go语言中的map怎么使用

Go语言中的map怎么使用

这篇文章主要介绍“Go语言中的map怎么使用”,在日常操作中,相信很多人在Go语言中的map怎么使用问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”Go语言中的map怎么使用”的疑惑有所帮助!接下来,请跟着小编一起来学习吧!

map 映射键到值:

Go语言中的map怎么使用

map 在使用之前必须用 make 来创建(不是 new);一个值为 nil 的 map 是空的,并且不能赋值。

复制代码 代码如下:

packagemainimport"fmt"typeVertexstruct{Lat,Longfloat64}varmmap[string]Vertexfuncmain(){m=make(map[string]Vertex)m["BellLabs"]=Vertex{40.68433,74.39967,}fmt.Println(m["BellLabs"])}

map 的文法跟结构体文法相似,不过键名是必须的。

packagemainimport"fmt"typeVertexstruct{Lat,Longfloat64}varm=map[string]Vertex{"BellLabs":Vertex{40.68433,-74.39967,},"Google":Vertex{37.42202,-122.08408,},}funcmain(){fmt.Println(m)}

如果顶层类型只有类型名的话,可以在文法的元素中省略键名。

packagemainimport"fmt"typeVertexstruct{Lat,Longfloat64}varm=map[string]Vertex{"BellLabs":{40.68433,-74.39967},"Google":{37.42202,-122.08408},}funcmain(){fmt.Println(m)}

修改map:

在 map m 中插入或修改一个元素:

m[key] = elem

获得元素:

复制代码 代码如下:

elem = m[key]

删除元素:

复制代码 代码如下:

delete(m, key)

通过双赋值检测某个键存在:

复制代码 代码如下:

elem, ok = m[key]

如果 key 在 m 中, ok 是 true。 否则,ok 是 false 并且 elem 是 map 的元素类型的零值。

同样的,当从 map 中读取某个不存在的键时,结果是 map 的元素类型的零值。

packagemainimport"fmt"funcmain(){m:=make(map[string]int)m["Answer"]=42fmt.Println("Thevalue:",m["Answer"])m["Answer"]=48fmt.Println("Thevalue:",m["Answer"])delete(m,"Answer")fmt.Println("Thevalue:",m["Answer"])v,ok:=m["Answer"]fmt.Println("Thevalue:",v,"Present?",ok)}

到此,关于“Go语言中的map怎么使用”的学习就结束了,希望能够解决大家的疑惑。理论与实践的搭配能更好的帮助大家学习,快去试试吧!若想继续学习更多相关知识,请继续关注恰卡编程网网站,小编会继续努力为大家带来更多实用的文章!

发布于 2022-04-15 22:31:36
收藏
分享
海报
0 条评论
29
上一篇:go语言如何在切片中删除元素 下一篇:Go语言中的Goroutine怎么使用
目录

    0 条评论

    本站已关闭游客评论,请登录或者注册后再评论吧~

    忘记密码?

    图形验证码