golang map 获取某个值

我们如果想要获取某个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

file

本作品采用《CC 协议》,转载必须注明作者和本文链接
by JeffreyBool blog :point_right: link
JeffreyBool
讨论数量: 0
(= ̄ω ̄=)··· 暂无内容!

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!