Golang的map数据类型

栏目: Go · 发布时间: 4年前

内容简介:1.什么是map2.map的定义3.map的注意事项

知识点预览

1.什么是map

2.map的定义

3.map的注意事项

4.map的增删改查

5.map的遍历

6.map的切片

7.map切片的细节

/*1.为什么要用到map咧?已经是有了数组和切片的类型,
map的表现形式是key->value形式,由于数组的key只能是整形的类型
并不适合类似于字典这样的需求,因此需要map来解决这种场景
*/
//定义方式1:定义然后make后再赋值
var 变量名 map[keytype]valuetype
变量名 = make(map[keytype]valuetype,len)
变量名[key] = value
//定义方式2:定义同时分配空间
变量名  := make(map[keytype]valuetype)
变量名[key] = value
//定义方式3定义同时分配空间及赋值
变量名 := map(keytype)valuetype{
  key:value
}
1.map在使用前如果定义了没有开辟空间那么必须要make,否则不能用
2.map的key是不能重复的如果重复则会保留最后定义的key
3.map的value可以是相同的
4.map的key-value是无序的,每次输出的顺序都是不同的
1. 变量名[key] = value   //如果没有就创建如果有则修改
2.delete(变量名,key)     //删除变量中的key
3.val,ok = 变量名[key]  //如果找到返回true,否则返回false
//map的遍历,只能用for-range
for key,value := range map变量名{
  fmt.Println(key,value)
}
//map切片的定义
var 变量名 []map[keytype]valuetype
变量名 = make([]map[keytype]valuetype,len)
变量名[0][key] = value  //赋值
//动态append map类型
newmap := map[keytype]valuetype{
  key:value
}
oldmap = append(oldmap,newmap)
1.map的传值方式是引用类型
2.map数组是自动扩容的不是固定的长度

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

React

React

卓越开发者联盟 / 寸志、范洪春、杨森、陈涌 / 电子工业出版社 / 2015-5-1 / CNY 65.00

2014 年横空出世的由Facebook 推出的开源框架React.js,基于Virtual DOM 重新定义了用户界面的开发方式,彻底革新了大家对前端框架的认识,将PHP 风格的开发方式迁移到客户端应用开发。其优势在于可以与各种类库、框架搭配使用。《React:引领未来的用户界面开发框架》是这一领域的首作,由多位一线专家精心撰写,采用一个全程实例全面介绍和剖析了ReactReact.js 的方方......一起来看看 《React》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器