Map

  • 创建

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    // 第一种
    c:= make (map[string]int)
    // 第二种
    c := map[string]int{"ok":1,"error":-1}
    // 第三种
    var c map[string]int
    // 万能好用写法: 使用空接口可以实现连键值都是类型不一样的
    c := map[string]interface{}{
    "ok":"ok",
    "err":"-1"
    }
  • 增加

    直接通过索引增加(同数组)

  • 删除

    使用内置的delete()函数

    1
    2
    delete(ages, "alice")
    // 第一个写变量名,第二个写键
  • 查询

    直接通过索引查询(同数组)

  • 比较

    不能使用== 来比较

    用for range 一个个比较(同切片)

  • 复制

    不能直接复制

    用for range 一个个复制(同切片)

  • 修改

    直接用索引来修改(同数组)