Go语言基础学习八-映射
来源:互联网 发布:淘宝男鞋高仿店推荐 编辑:程序博客网 时间:2024/04/29 21:19
Go语言基础学习八-映射
Go语言中映射是一种内置的数据结构,保存键-值对数据集合,在映射中所有的键必须是支持==和!=操作符的类型,一般的类型都支持如,int,float64,rune,string和可比较的数组及结构体,但Go语言的切片和不能用于比较的数组和结构体不能作为键值。
映射的一些操作如下:
m[k] = v : 用键值k(键)将值v(值)赋值给映射m(维持键-值的映射名)
Delete(m,k) : 删除映射m中的k键对应的值
v:=m[k] : 将映射m中k键对应的值赋值给v,若k键不存在,则将映射类型的0值赋值给v
v,found :=m[k]: 同上,但发现有k键存在时,found为true,不存在则found为false
len(m) :返回映射中键值对的个数
映射属于引用类型(就相当于指针类型),无论映射有多少数据保存,映射的传递都是很廉价的,映射的查询速度很快,且映射里所有的键的数据类型必须相同,值也是如此,但键和值的数据类型可以不同,但是我们可以创建一个值为空接口类型(interface{})的映射,这样任意类型的值都可以作为该映射的值。
映射的创建:
make(map[KeyType] ValueType,initialCapacity) //使用make创建映射,一个空的映射
make(map[KeyType] ValueType)
map[KeyType] ValueType{}
map[KeyType] ValueType{key1:value1,key2:value2…}
同样的,映射和数组或切片一样可以使用索引操作符[],但和数组或切片不同,映射的键类型不必是int型,可以是字符串,可比较的数组,指针等
for…range来遍历映射,for key,value :=range map,遍历每一个键值对,分别返回该映射的键和值。
映射的查找操作:
v = m[k],直接返回键k的]对应的值
v,found := m[k],返回键k对应的值和是否发现键值的标志位
映射的修改操作:
delete(populationForCity,”Shanghai”),删除映射population中的Shanghai键的值
更新和添加直接对键进行赋值即可。
当我们遍历一个映射的时候,遍历的顺序是按键的大小排序的(Unicode码点顺序)
- Go语言基础学习八-映射
- GO语言基础学习
- go语言基础学习
- Go语言学习(八)获取命令行参数
- Go学习笔记-go语言基础
- go语言基础学习二
- Go语言基础学习:变量
- go语言学习基础简介
- Go 基础语言学习笔记
- 八、Go语言包之strings--go语言学习笔记
- Go语言基础学习二-简单的代码分析
- Go语言基础学习七-指针与切片操作
- Go语言基础学习九-过程式编程一
- Go语言_基础学习篇
- go语言 基础编程学习笔记
- Go语言学习一 :基础语句
- GO语言基础学习------方法_1
- Go语言基础语法学习笔记[1]
- 链表的回文结构
- jzoj 5039. 【NOI2017模拟4.2】查询 线段树
- 类的设计技巧
- static与const的作用
- Maven所遇到的坑
- Go语言基础学习八-映射
- ARM中MRS和MSR汇编指令
- Reactive Native环境搭建(Android)
- bzoj1149: [CTSC2007]风玲Mobiles
- 我看见一个妹子很不想说他的
- VTK编译的一些报错
- 循环节长度
- 剑指Offer 38 数字在排序数组中出现的次数
- LeetCode: 46. Permutations