• Go map基础


     1 package main
     2 
     3 import "fmt"
     4 
     5 //Map
     6 //创建:make(map[string]int)
     7 //获取元素: m[key]
     8 //key不存在时,获得value类型的初始值
     9 //用value, ok:= m[key]来判断是否存在key
    10 //delete删除元素
    11 //用range遍历key,或者遍历key,value对
    12 //不保证遍历顺序,如需顺序,需手动对key排序
    13 //用len获得元素个数
    14 //map使用哈希表,必须可以比较相等
    15 //除了slice, map, function的内建类型都可以作为key
    16 //struct类型不包含上述字段也可以作为key
    17 
    18 func main() {
    19     //创建map
    20     m := map[string] string {
    21         "name": "ccmouse" ,
    22         "course": "golang",
    23         "site": "imooc",
    24         "quality": "notbad",
    25     }
    26     fmt.Println(m) //map[course:golang site:imooc quality:notbad name:ccmouse]
    27 
    28     m2 := make( map[string]int)
    29     fmt.Println(m2)  //map[]  m2 == empty map
    30 
    31     var m3 map[string]int
    32     fmt.Println(m3)  //map[]  m3 == nil
    33 
    34     //map的遍历
    35     for k, v := range m{
    36         fmt.Println(k, v)   //name ccmouse //hash map输出无序
    37                             //course golang
    38                             //site imooc
    39                             //quality notbad
    40     }
    41 
    42     //map取值
    43     courseName, ok := m["course"]
    44     fmt.Println(courseName, ok)  //golang true
    45 
    46     if causeName, ok:= m["cause"]; ok{  //判断值存不存在
    47         fmt.Println(causeName)
    48     }else{
    49         fmt.Println("Key does not exist")   //Key does not exist
    50     }
    51 
    52     //删除元素
    53     name, ok := m["name"]
    54     fmt.Println(name, ok)  //ccmouse true
    55     delete(m, "name")
    56     name, ok = m["name"]
    57     fmt.Println(name, ok)  // false
    58 }
  • 相关阅读:
    4月份学习计划
    windows下下载安装python、 pip、nose
    Windows下怎么搭建Python+Selenium的自动化环境
    pthon之异常、文件练习题
    python 元组 字符串 字典 列表嵌套练习题1
    硬件访问服务AIDL JNI 方式
    Android 加载图片优化(二) LruCache DiskLruCache
    Android 加载图片优化(一)
    ubuntu 下 4412烧写SuperBoot
    metro WCF
  • 原文地址:https://www.cnblogs.com/yuxiaoba/p/9345955.html
一二三 - 开发者的网上家园