golang map 获取某个值

时间:2024-05-22 21:45:08

我们如果想要获取某个map的值怎么做呢?

package main

import "fmt"

func main() {

    m := map[string]int{
        "a": 1,
        "b": 2,
        "c": 3,
    }

    fmt.Println("Geting values")
    courseName := m["a"]
}

如果获取了一个不存在的key 怎么处理呢?

例如:

package main

import "fmt"

func main() {

    m := map[string]int{
        "a": 1,
        "b": 2,
        "c": 3,
    }

    fmt.Println("Geting values")
    courseName := m["d"]
}

输出结果会为空字串. 我们怎么防止空字串的问题呢?

package main

import "fmt"

func main() {

    m := map[string]int{
        "a": 1,
        "b": 2,
        "c": 3,
    }

    fmt.Println("Geting values")
    courseName, ok := m["a"]
    fmt.Println(courseName,ok)
    if courseName, ok := m["d"]; ok{
        fmt.Println(courseName)
    }else{
        fmt.Println("key does not exist")
    }
}

这里我们使用到了两个变量接受值. 用第二个值来判断boolean

golang map 获取某个值