go语言如何获取map元素
这篇“go语言如何获取map元素”文章的知识点大部分人都不太理解,所以小编给大家总结了以下内容,内容详细,步骤清晰,具有一定的借鉴价值,希望大家阅读完这篇文章能有所收获,下面我们一起来看看这篇“go语言如何获取map元素”文章吧。
两种方法:1、利用“for range”语句遍历map来获取全部元素,语法“for key, value := range mapName{...}”。2、使用key做为索引的形式来获取指定元素,语法“value, isOk := mapName[key]”;返回两个返回值,第一个返回值是获取的值,如果key不存在,返回空值,第二个参数是一个bool值,表示获取值是否获取成功。
go语言获取map元素的两种方法
方法1:利用for range语句遍历map来获取全部元素
Go 语言 中 map 的遍历只能使用 for range 的形式,for range 循环返回的第一个是 map 的 key,返回的第二个是 map 的 value。
语法:
for key, value := range mapName{
...
}
说明:
使用 for range 循环遍历 变量 名为 mapName 的 map ,其中 key 是 map 的键,value 是 map 的 key 所对应的 值。
示例:
package main
import (
"fmt"
)
func main() {
//使用 for range 循环遍历 map,获取 map 的 KEY 和 VALUE
mapHaiCoder := map[string]string{
"Server":"Golang",
"JavaScript":"Vue",
"Db":"Redis",
}
for key, value := range mapHaiCoder{
fmt.Println("Key =", key, "Value =", value)
}
}
方法2:使用key做为索引的形式来获取指定元素
Go 语言 中要获取 map 中的元素,除了使用 遍历 的方式,我们还可以使用 key 做为索引的形式来获取 map 指定 key 的元素。
语法:
value, isOk := mapName[key]
参数 | 描述 |
---|---|
mapName | 要获取元素的 map。 |
key | 要获取的键。 |
返回值:
返回值 | 描述 |
---|---|
value | 获取到的值。 |
isOk | 是否获取到值,获取到则返回 true,否则,返回 false。 |
说明
根据 map 的 key 获取 map 的元素,返回两个返回值,第一个返回值是获取的值,如果 key 不存在,返回空值,第二个参数是一个 bool 值,表示获取值是否获取成功。
示例:根据key获取map元素
使用 [] 加上 key 的形式,获取 map 的元素
package mainimport (
"fmt")func main() {
fmt.Println("嗨客网(www.haicoder.net)")
//使用 [] 加上 key 的形式,获取 map 的元素
mapHaiCoder := map[string]string{
"Server":"Golang",
"JavaScript":"Vue",
"Db":"Redis",
}
value, isOk := mapHaiCoder["Server"]
fmt.Println("Value =", value, "IsOk =", isOk)}
程序运行后,控制台输出如下:
package main
import (
"fmt"
)
func main() {
//使用 [] 加上 key 的形式,获取 map 的元素
mapHaiCoder := map[string]string{
"Server":"Golang",
"JavaScript":"Vue",
"Db":"Redis",
}
value, isOk := mapHaiCoder["Server"]
fmt.Println("Value =", value, "IsOk =", isOk)
}
我们使用初始化的方式创建了一个有三个元素的 map,使用 [] 加上 key 的形式,获取 map 的 key 为 “Server” 的元素的值。
map 返回了两个值,第一个是 key 所对应的值,第二个是 key 是否存在的标志,isOk 为 true,表明 key 存在。
以上就是关于“go语言如何获取map元素”这篇文章的内容,相信大家都有了一定的了解,希望小编分享的内容对大家有帮助,若想了解更多相关的知识内容,请关注蜗牛博客行业资讯频道。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:niceseo99@gmail.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。
评论