📜  GO语言 map(1)

📅  最后修改于: 2023-12-03 15:31:03.275000             🧑  作者: Mango

GO语言 map

GO语言中的map是一种哈希表实现,用于存储键值对,在使用时需要注意一些细节。本文将介绍如何在GO程序中使用map。

声明与初始化

在GO语言中,使用make函数创建一个新的map。make函数的返回值是一个指向新map的指针。

    //声明一个map
    var m map[string]int
    
    //初始化一个map
    m = make(map[string]int)
    
    //声明并初始化一个map
    m1 := make(map[string]int)
    
    //在声明时初始化一个map
    m2 := map[string]int{
        "one": 1,
        "two": 2,
    }

上述代码分别演示了以下4种声明和初始化方法:

  1. 声明一个map,但不初始化,需要使用make函数初始化。
  2. 声明并初始化一个map,需要使用make函数。
  3. 声明并初始化一个map,可以直接使用map字面值。
  4. 在声明时初始化一个map,可以直接使用map字面值。
插入和访问map中的对象

GO语言的map允许在map中插入一个键值对,如果该键已存在,则更新值,否则插入一个新键值对。

    //插入一个键值对
    m["three"] = 3
    
    //获取一个键的值
    val := m["four"]
    
    //判断一个键是否存在
    _, ok := m["four"]
    if ok {
        //存在
    } else {
        //不存在
    }

上述代码分别演示了插入一个键值对、获取键的值、判断键是否存在等操作。

遍历map中的对象

在GO语言中,可以使用for循环来遍历一个map中的所有键值对。

    //遍历map中所有键值对
    for k, v := range m {
        fmt.Println(k, v)
    }

上述代码演示了遍历一个map中的所有键值对,并输出map中每个键值对的键和值。

删除map中的对象

在GO语言中,可以使用delete函数来删除map中的一个键值对。

    //删除map中一个键的值
    delete(m, "three")

上述代码演示了删除map中一个键的值。

总结

以上是关于GO语言map的简单介绍,map是一个强大而灵活的数据结构,可以方便地进行键值对操作。但在使用时需要注意一些细节,如遍历、访问、插入、删除等操作需要掌握。