golang map类型转换遇到的坑

dok8s · · 4040 次点击 · · 开始浏览    
这是一个创建于 的文章,其中的信息可能已经有所发展或是发生改变。

map想必大家都很熟悉了,下面简单记录一下今天开发遇到的坑。

基本概念>字典(Map)

字典是一组无序的,键值对的集合。字典也叫做关联数组,因为数组通过索引来查找元素,而字典通过键来查找元素。当然,很显然的,字典的键是不能重复的。如果试图赋值给同一个键,后赋值的值将覆盖前面赋值的值。

例如:

x := make(map[string]interface{})

y := make(map[string]interface{})

y["name"] = "echo"

y["ege"] = 28

x["str"] = y

如果我将以上的x返回,输出打印

for k,v := range x["str"] {

  utils.display(v["name"])

}

执行后将报错,因为y,x定义的类型不同,正确x值的类型应该为y的类型,否则将报错类型为interface{}无法遍历。


有疑问加站长微信联系(非本文作者)

本文来自:简书

感谢作者:dok8s

查看原文:golang map类型转换遇到的坑

入群交流(和以上内容无关):加入Go大咖交流群,或添加微信:liuxiaoyan-s 备注:入群;或加QQ群:692541889

4040 次点击  
加入收藏 微博
暂无回复
添加一条新回复 (您需要 登录 后才能回复 没有账号 ?)
  • 请尽量让自己的回复能够对别人有帮助
  • 支持 Markdown 格式, **粗体**、~~删除线~~、`单行代码`
  • 支持 @ 本站用户;支持表情(输入 : 提示),见 Emoji cheat sheet
  • 图片支持拖拽、截图粘贴等方式上传