首頁  >  文章  >  後端開發  >  go語言怎麼取得map元素

go語言怎麼取得map元素

青灯夜游
青灯夜游原創
2023-01-16 10:38:423524瀏覽

兩種方法:1.利用「for range」語句遍歷map來取得全部元素,語法「for key, value := range mapName{...}」。 2.使用key做為索引的形式來取得指定元素,語法「value, isOk := mapName[key]」;傳回兩個回傳值,第一個傳回值是取得的值,如果key不存在,則傳回空值,第二個參數是一個bool值,表示獲取值是否取得成功。

go語言怎麼取得map元素

本教學操作環境:windows7系統、GO 1.18版本、Dell G3電腦。

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)
	}
}

go語言怎麼取得map元素

#方法2:使用key做為索引的形式來取得指定元素

Go 語言中要取得map 中的元素,除了使用遍歷的方式,我們也可以使用key 做為索引的形式來取得map 指定key 的元素。

語法:

value, isOk := mapName[key]
要取得元素的map。 要取得的鍵。
#參數 描述
##mapName
key

傳回值:

傳回值valueisOk
##描述
取得到的值。
是否取得到值,取得到則傳回 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)
}

go語言怎麼取得map元素我們使用初始化的方式創建了一個有三個元素的map,使用[] 加上key 的形式,獲取map 的key 為「Server」 的元素的值。

map 傳回了兩個值,第一個是 key 所對應的值,第二個是 key 是否存在的標誌,isOk 為 true,表示 key 存在。

【相關推薦:

Go影片教學

程式設計教學

以上是go語言怎麼取得map元素的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn