程序开发 · 2025年4月28日

Go 语言:如何从二维 Map 中获取指定字段的值?

GOLANG今天将给大家带来
《Go 语言:如何从二维 Map 中获取指定字段的值?》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到
等等知识点,如果你是正在学习
GOLANG或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!,
,
获取二维 map 中指定字段值,在 go 语言中,如何获取一个二维 map 中的某个特定字段的值?,代码示例如下:,如何正确获取 username 字段的值?,
答案:,需要对 user 变量进行第二次断言,以将其转换为 map[string]string 类型:,本篇关于《Go 语言:如何从二维 Map 中获取指定字段的值?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于GOLANG的相关知识,请关注GOLANG公众号!,获取二维 map 中指定字段值,GOLANG今天将给大家带来
《Go 语言:如何从二维 Map 中获取指定字段的值?》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到
等等知识点,如果你是正在学习
GOLANG或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!,

当前位置: > > > > Go 语言:如何从二维 Map 中获取指定字段的值?

Go 语言:如何从二维 Map 中获取指定字段的值?

2024-11-06 17:12:48
0浏览
收藏

GOLANG今天将给大家带来《Go 语言:如何从二维 Map 中获取指定字段的值?》,感兴趣的朋友请继续看下去吧!以下内容将会涉及到等等知识点,如果你是正在学习GOLANG或者已经是大佬级别了,都非常欢迎也希望大家都能给我建议评论哈~希望能帮助到大家!

获取二维 map 中指定字段值

在 go 语言中,如何获取一个二维 map 中的某个特定字段的值?

代码示例如下:

jmap := make(map[string]interface{})
err := json.unmarshal(util.getbytemsgfromnetconn(conn), &jmap)

if err != nil {
    log.println("解析 json 字符串发生错误:", err.error())
    conn.close()
}

var usernametmp string

if user, exist := jmap["user"]; exist {
    if reflect.valueof(user).kind() == reflect.map {
        // 问题出在这里,由于 user 已经断言为 map[string]interface{} 类型,因此不能直接访问其 map[string]string 类型的字段
        usernametmp = user.(map[string]interface{})["username"]
    }
}

如何正确获取 username 字段的值?

答案:

需要对 user 变量进行第二次断言,以将其转换为 map[string]string 类型:

usernameTmp = user.(map[string]interface{})["username"].(string)

本篇关于《Go 语言:如何从二维 Map 中获取指定字段的值?》的介绍就到此结束啦,但是学无止境,想要了解学习更多关于GOLANG的相关知识,请关注GOLANG公众号!

如何解析具有不同层级竖线的字符串?
分布式事务新手指南:如何轻松上手二阶段提交?