首页 > 后端开发 > Golang > golang如何创建map

golang如何创建map

发布: 2019-12-25 10:31:30
原创
5354 人浏览过

golang如何创建map

map是一堆键值对的未排序集合,类似Python中字典的概念,它的格式为map[keyType]valueType,是一个key-value的hash结构。map的读取和设置也类似slice一样,通过key来操作,只是slice的index只能是int类型,而map多了很多类型,可以是int,可以是string及所有完全定义了==与!=操作的类型。

声明map的语法如下:

var map变量名 map[key] value
登录后复制

其中:key为键类型,value为值类型

例如:value不仅可以是标注数据类型,也可以是自定义数据类型

var numbers map[string] int
var myMap map[string] personInfo
登录后复制

personInfo为自定义结构体,存储个人信息,定义如下

type personInfo struct {
   ID string 
   Name string 
   Address string
}
登录后复制

map初始化:

1、直接初始化(创建)

rating := map[string] float32 {"C":5, "Go":4.5, "Python":4.5, "C++":2 }
myMap := map[string] personInfo{"1234": personInfo{"1", "Jack", "Room 101,..."},}
登录后复制

2、通过make初始化(创建)

Go语言提供的内置函数make()可以用于灵活地创建map。

创建了一个键类型为string,值类型为int的map

numbers := make(map[string] int)
登录后复制

创建了一个键类型为string,值类型为personInfo的map

myMap = make(map[string] personInfo)
登录后复制

也可以选择是否在创建时指定该map的初始存储能力,如创建了一个初始存储能力为5的map

myMap = make(map[string] personInfo, 5)
登录后复制

创建后初始化如下:

numbers["one"] = 1 
myMap["1234"] = personInfo{"1", "Jack", "Room 101,..."}
登录后复制

更多golang知识请关注golang教程栏目。

以上是golang如何创建map的详细内容。更多信息请关注PHP中文网其他相关文章!

相关标签:
来源:php.cn
本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板