猿问

如何检查Golang中的地图是否为空?

当以下代码:


if map == nil {

    log.Fatal("map is empty")

}

运行时,不执行日志语句,whilefmt.Println(map)表示map为空:


map[]


料青山看我应如是
浏览 151回答 2
2回答

慕婉清6462132

您可以使用len:if len(map) == 0 {    ....}来自https://golang.org/ref/spec#Length_and_capacitylen(s) map[K]T 映射长度(定义的键数)

慕尼黑8549860

以下示例演示了可用于检查映射是否为空的 nil 检查和长度检查package mainimport (    "fmt")func main() {    a := new(map[int64]string)    if *a == nil {        fmt.Println("empty")    }    fmt.Println(len(*a))}印刷empty0
随时随地看视频慕课网APP

相关分类

Go
我要回答