网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

Go语言中映射表map的使用

1 概述

Go语言中的键值对(key->value)集合,称之为映射map。映射map是变长类型,定义时不需要指定长度。映射map是无序的,遍历是的顺序不可期,原因是底层由hash表实现。
逻辑结构表示为:
Go语言中映射表map的使用

创新互联建站于2013年开始,是专业互联网技术服务公司,拥有项目网站制作、网站建设网站策划,项目实施与项目整合能力。我们以让每一个梦想脱颖而出为使命,1280元吴忠做网站,已为上家服务,为吴忠各地企业和个人服务,联系电话:18980820575

2 创建语法

var m = map[key_type]value_type{key1: value1, key2: value2}
var m = make(map[key_type]value_type)

// 示例,字符串型下标,字符串型值:
var m = make(map[string]string) //make()会分配内存空间,初始化。
m["east"] = "东"
m["west"] = "西"

// 直接初始化
var m = map[string]string{"east": "东", "west": "西"}

3 []下标操作

与数组类型,使用下标完成映射元素的访问。

var m = map[string]string{"east": "东", "west": "西"}
fmt.Println(m["east"]) 
// 东
fmt.Println(m["west"]) 
// 西

4 for-range

for k, v := range mapVar {
    fmt.Println(k, v)
}

遍历的顺序不可期。

5 映射是引用类型

切片为引用类型,因此切片的默认初始值为nil。
同时复制时为引用传递,修改会相互影响。

6 检测元素是否存在

通过key获取元素时,使用第二个变量,可以接收到当前key是否存在的布尔值。

var m = map[string]string{"east": "东", "west": "西"}
value, exists := m["south"]
// value: 东, exists: true

value, exists := m["south"]
// value: , exists: false

7 delete 删除元素

delete(map, key),删除 map 中,指定的 key。如果 key 不存在,该操作不会产生错误。

var m = map[string]string{"east": "东", "west": "西"}
delete(m, "west")
fmt.Println(m)
// map[east:东]

8 键值对调

如果 map 的值类型可以作为 key 且所有的 value 是唯一的,那么通过下面的方法可以做到键值对调:

var m = map[string]string{"east": "东", "west": "西"}
for k, v := range m {
  m[v] = k
}

完!
原文出自:小韩说课
微信关注:小韩说课
Go语言中映射表map的使用


新闻名称:Go语言中映射表map的使用
分享URL:http://bjjierui.cn/article/ppcipg.html

其他资讯