https://www.swvq.com

go语言中map是一个kv对集合。底层使用hash table,用链表来解决冲突,通过编译器配合runtime,所有的map对象都是共用一份代码。

golang判断map中key不存在的方法:

判断方式为value,ok := map[key],ok为true则存在,ok为false则map的key不存在。

package main
 
import "fmt"
 
func main() {
 
    demo := map[string]bool{
        "a": false,
    }
 
    //错误,a存在,但是返回false
    fmt.Println(demo["a"])
 
    //正确判断方法
    _, ok := demo["a"]
    fmt.Println(ok)
}

输出

https://www.swvq.com

false
true

本篇文章来至:IT社区