Der Methodencode für Golang, um festzustellen, ob der Schlüssel in der Karte vorhanden ist:
if _, ok := map[key]; ok { //存在 }
Darüber hinaus stellt Golang keine Methode bereit, um festzustellen, ob der Artikel vorhanden ist Das Array wird häufig im Programm verwendet. Für diese Art der Beurteilung kann das Array in eine Karte mit den Elementen im Array als Schlüssel umgewandelt und dann mit der oben genannten Methode beurteilt werden, was die Effizienz der Beurteilung verbessert.
Beispiel:
package main import "fmt" func main() { //声明并初始化一个map,key是int64类型,value是string类型 myMap := make(map[int64]string) myMap[1] = "value1" myMap[2] = "value2" myMap[5] = "value5" myMap[6] = "value6" //声明一个int64数组,然后遍历数组,num是数组中的元素,下划线_代表元素的下标位置 for _, num := range []int64{1, 2, 3, 4, 5, 6} { //不关心数组中的value,用下划线代替 //一般都习惯用ok变量表示是否包含,也可以用别的变量名字 if _, ok := myMap[num]; ok { fmt.Printf("myMap中包含key:%d \n", num, ) } else { fmt.Printf("myMap中不包含key:%d\n", num) } } fmt.Println("=================分割线=======================") for _, num := range []int64{1, 2, 3, 4, 5, 6} { //如果包含key,想知道value,就把返回值赋给一个变量,这儿用变量v //这儿用变量s表示是否包含指定的key if v, s := myMap[num]; s { fmt.Printf("myMap中包含key:%d,value值为:%s\n", num, v) } else { fmt.Printf("myMap中不包含key:%d\n", num) } } }
Ausgabe nach dem Ausführen:
myMap中包含key:1 myMap中包含key:2 myMap中不包含key:3 myMap中不包含key:4 myMap中包含key:5 myMap中包含key:6 =================分割线======================= myMap中包含key:1,value值为:value1 myMap中包含key:2,value值为:value2 myMap中不包含key:3 myMap中不包含key:4 myMap中包含key:5,value值为:value5 myMap中包含key:6,value值为:value6
Für weitere Golang-Kenntnisse beachten Sie bitte die Spalte Go-Sprach-Tutorial.
Das obige ist der detaillierte Inhalt vonGolang-Methode zur Bestimmung, ob der Schlüssel in der Karte vorhanden ist. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!