码迷,mamicode.com
首页 > 编程语言 > 详细

go语言之map

时间:2019-08-16 15:43:32      阅读:110      评论:0      收藏:0      [点我收藏+]

标签:声明   pre   --   引用   false   let   string   range   als   

1.map的定义

map是键值对的映射(key->value)

key可以是引用类型之外的任何数据类型,他是唯一、无序的,所有key的数据类型必须相同

var m1 map[int]string//声明一个map,无空间,不能存储数据
m2 :=  map[int]string{}//能存储数据,默认len=0
m3 := make(map[int]string//同上
m4 := make(map[int]string, 5)//创建一个map并指定大小

map不能使用cap,只能使用len

2.map的初始化

var m5 map[int]string = map[int]string{1:"Luffy", 130:"Sanji", 1301:"Zoro"}//定义同时初始化
m6 := map[int]string{1:"Luffy", 130:"Sanji", 1303:"Zoro"}//默认推到类型

3.map的遍历

    var m8 map[int]string = map[int]string{1:"Luffy", 130:"Sanji", 1301:"Zoro"}
    for k, v := range m8 {
        fmt.Printf("key:%d --- value:%q\n", k, v)
    }

4.判断map是否存在

    var m9 map[int]string = map[int]string{1:"Luffy", 130:"Sanji", 1301:"Zoro"}

    if v, has := m9[12]; has {  // m9[下标] 返回两个值,第一个是value,第二个是bool 代表key是否存在。
        fmt.Println("value=", v, "has=", has)
    } else {
        fmt.Println("false value", v, "has=", has)
    }

5.map删除元素

delete(map,key)//删除一个不存在的key也不会报错

go语言之map

标签:声明   pre   --   引用   false   let   string   range   als   

原文地址:https://www.cnblogs.com/20155222lzj/p/11364270.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!