Golang中map的声明定义如何实现
导读:本文共1138字符,通常情况下阅读需要4分钟。同时您也可以点击右侧朗读,来听本文内容。按键盘←(左) →(右) 方向键可以翻页。
摘要: 定义map,在golang中定义为map[string][string],类比为python中的dict,内部实现也是通过哈希存储的,内部的元素是无序的。方式1:* 通过 var xx map[type]type,来进行声明一个map;此时的myMap是一个空变量,为开辟实际空间进行赋值,是一个空占8字节的变量;需要通过make(map[string]strin... ...
目录
(为您整理了一些要点),点击可以直达。定义
map,在golang中定义为map[string][string],类比为python中的dict,内部实现也是通过哈希存储的,内部的元素是无序的。
方式1:
* 通过 var xx map[type]type,来进行声明一个map;
此时的myMap是一个空变量,为开辟实际空间进行赋值,是一个空占8字节的变量;
需要通过make(map[string]string),以声明的类型为准,进行空间开辟,后续才可以进行赋值,否则会报越界错误;
方式2:
通过直接x:=make(map[string]string),不需要先定义一个map类型的空变量,因为make内置方法会根据你传入的类型,返回具体类型,通过:=来接收。
方式3:
初始化方式创建map;
这种方法用的比较多,不需要make去申请内存分配;通过定义一个map类型变量并初始化,可以动态开辟内存,并赋值;
* 细节,map内部最后一个元素末尾要带逗号,这是go语法规定;
使用:
总的来说,使用也是通过key:value,以O(1)的复杂度在数据体中查询值,特别需要注意,对于map,可以简单理解为,通过类型的指定,map在函数中的传递可以理解为是"引用传递",即可以通过指针寻址,对指定值进行修改;
</div> <div class="zixun-tj-product adv-bottom"></div> </div> </div> <div class="prve-next-news">
Golang中map的声明定义如何实现的详细内容,希望对您有所帮助,信息来源于网络。