zoukankan      html  css  js  c++  java
  • Go

    定义

    map - 类似于HashTable或者Dictionary,使用key-value 对子的形式来表示。

    key 必须由支持 == 或者 := 比较运算符,不能是函数,Slice还有Map类型。

    map 查找比遍历快,但是比索引查找慢得多(100倍)。

    使用"make" 关键字来定义map, 语法为:

    package main
    
    import (
        "fmt"
    )
    
    func main() {
        var m1 map[int]string
        fmt.Println(m1)
    
        var m2 map[int]string
        m2 = map[int]string{}
        fmt.Println(m2)
    
        m3 := make(map[int]string)
        fmt.Println(m3)
    }

    当键值对不存在时自动添加,使用 “delete” 关键字进行删除 

    package main
    
    import (
        "fmt"
    )
    
    func main() {
        
        m3 := make(map[int]string)
        fmt.Println(m3)
        m3[1] = "ok"
        a := m3[1]
        fmt.Println(a)
    }
    
    //output
    map[]
    ok

    Map 嵌套 与 多返回值

    m4 := make(map[int]map[int]string) //定义一个map,其value还是map
    a, ok := m4[0][0] //定义多返回值 a, ok, ok 为 bool 类型
    if !ok {
        m4[0] = make(map[int]string) //定义外层map的value(还是map)
        m4[0][0] = "Good" // 赋值
    }
    a, ok = m4[0][0]
    fmt.Println(a, ok)
    
    //output
    Good true
  • 相关阅读:
    树的直径 学习笔记
    SDOJ 3742 黑白图
    【SDOJ 3741】 【poj2528】 Mayor's posters
    SDOJ 3740 Graph
    SDOJ 3696 Tree
    SDOJ 1195 Zhenhuan
    又一次受刺激后的发奋
    html_表单form中的input类型大集合
    js_表格的增删改
    JS_拖拽窗口的实现
  • 原文地址:https://www.cnblogs.com/atuotuo/p/6838605.html
Copyright © 2011-2022 走看看