开发者

Golang中map的三种声明定义方式实现

开发者 https://www.devze.com 2023-02-18 10:46 出处:网络 作者: 你好o我是白熊
目录 定义方式1:方式2:方式3: 定义 map,在golang中定义为map[string][string],类比为python中的dict,内部实现也是php通过哈希存储的,内部的元javascript素是无序的。
目录
  •  定义
  • 方式1:
  • 方式2:
  • 方式3:

 定义

map,在golang中定义为map[string][string],类比为python中的dict,内部实现也是php通过哈希存储的,内部的元javascript素是无序的。

方式1:

* 通过 var xx map[type]type,来进行声明一个map;

此时的myMap是一个空变量,为开辟实际空间进行赋值,是一个空占8字节的变量;

需要通过make(map[string]string),以声明的类型为准,进行空间开辟,后续才可以进行赋值,否则会报越界错误;

Golang中map的三种声明定义方式实现

Golang中map的三种声明定义方式实现

方式2:

通过直接x:=make(map[string]string),不需要先定义一个map类型的空变量,因为make内置方法会根据你传入的类型,返回具体类型,通过:=来接收。

Golang中map的三种声明定义方式实现

方式3:

初始化方式创建map;

这种方法用的比较多,不需要make去申请内存分配;通过定义一个map类型变量并初始化,可以动态开辟内存,并赋值;

* 细节,map内部最后一个元素末尾要带逗号,这是go语法规定;

Golang中map的三种声明定义方式实现

使用:

总的来说,使用也是通过key:value,以O(1)的复杂度在数据体中查询值,特别需要注意,对于map,可以简单理解为,通过类型的指定,map在函数中的传递可以理解为是"引用传递"编程客栈;,即可以通过指针寻址,对指定值进行修改;

Golang中map的三种声明定义方式实现

到此这篇关于G编程客栈olanCNoFFSg中map的三种声明定义方式实现的文章就介绍到这了,更多开发者_C入门相关Golang map声明定义内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

0

精彩评论

暂无评论...
验证码 换一张
取 消

关注公众号