2 つの方法: 1. 「for range」ステートメントを使用してマップを走査し、すべての要素を取得します。構文は「for key, value := range mapName{...}」です。 2. key をインデックスとして使用して、指定された要素を取得します。構文は "value, isOk := mapName[key]" です。2 つの戻り値を返します。最初の戻り値は取得された値です。キーが存在しない場合は、return します。空の値。2 番目のパラメータはブール値で、値が正常に取得されたかどうかを示します。
このチュートリアルの動作環境: Windows 7 システム、GO バージョン 1.18、Dell G3 コンピューター。
Go 言語でマップ要素を取得する 2 つの方法
方法 1: for range ステートメントを使用してマップを走査し、取得しますすべての要素
Go 言語でのマップの走査では、for range の形式のみを使用できます。for range ループによって返される最初のものはマップのキーであり、2 番目に返されるものはマップのキーです。マップの値。
構文:
for key, value := range mapName{ ... }
説明:
for range を使用して、変数名 mapName でマップをループします。ここで、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: キーをインデックスとして使用して、指定された要素を取得します
Go 言語でマップ内の要素を取得するには、トラバーサルを使用する以外に、キーをインデックスとして使用して、マップ内の指定されたキーを持つ要素を取得することもできます。value, isOk := mapName[key]
説明 | |
---|---|
mapName | 要素のマップを取得します。|
取得するキー。 |
取得された値。 | #isOk |
値が取得できたかどうか、取得できた場合は true を返し、取得できなかった場合は false を返します。 |
#例: キーに基づいてマップ要素を取得します
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)}