Go的map查找

简介: 在Go中,map是一种无序的键值对集合,类似于其他语言中的字典或哈希表。可以使用map来存储和查找数据。

创建一个map需要使用make()函数,指定map的类型。例如:

m := make(map[string]int)

上面的例子创建了一个键为string类型,值为int类型的map。

向map中添加元素可以使用以下语法:

m[key] = value

要从map中查找一个值,可以使用以下语法:

value := m[key]

如果map中不存在指定的键,则返回零值。

以下是一个完整的示例:

package main

import "fmt"

func main() {
   
    // 创建一个map
    m := make(map[string]int)

    // 添加键值对
    m["apple"] = 1
    m["banana"] = 2
    m["orange"] = 3

    // 查找值
    value := m["apple"]
    fmt.Println(value) // 输出:1

    // 删除键值对
    delete(m, "banana")

    // 遍历map
    for key, value := range m {
   
        fmt.Println(key, value)
    }
}

输出结果为:

1
apple 1
orange 3

该示例演示了如何创建map、添加键值对、查找值、删除键值对和遍历map。

需要注意的是,map是无序的,每次遍历得到的键值对的顺序可能不同。

同时,需要注意的是,当从map中查找一个不存在的键时,会返回该值类型的零值,而不会引发错误。可以通过检查返回值是否为零值来判断一个键是否存在。例如:

value, ok := m[key]
if ok {
   
    fmt.Println("存在")
} else {
   
    fmt.Println("不存在")
}
目录
相关文章
|
2月前
|
存储 安全 Go
|
5月前
|
存储 安全 Java
Go 基础数据结构的底层原理(slice,channel,map)
Go 基础数据结构的底层原理(slice,channel,map)
55 0
|
5月前
|
存储 缓存 安全
Go Map 的 11 连问
Go Map 的 11 连问
26 0
|
5月前
|
Go
go map进行有序的排序
go map进行有序的排序
20 0
|
7月前
|
Go
Go 语言学习之map
Go 语言学习之map
32 0
|
7月前
|
存储 缓存 安全
90%的Go语言程序员map遍历方式都是错的
90%的Go语言程序员map遍历方式都是错的
36 0
|
5天前
|
Go
|
17天前
|
存储 编译器 Go
Golang深入浅出之-掌握Go语言Map:初始化、增删查改与遍历
【4月更文挑战第21天】Go语言中的`map`提供快速的键值对操作,包括初始化、增删查改和遍历。初始化时,推荐使用`make()`函数,如`make(map[string]int)`。插入和查询键值对直接通过索引访问,更新则重新赋值。删除键值对需用`delete()`函数,确保键存在。遍历map常用`for range`,注意避免在遍历中修改map。了解这些并避免易错点,能提升代码效率和可读性。
21 1
Golang深入浅出之-掌握Go语言Map:初始化、增删查改与遍历
|
1月前
|
存储 缓存 安全
掌握Go语言:Go语言Map,高效键值对集合的应用与注意事项详解(26)
掌握Go语言:Go语言Map,高效键值对集合的应用与注意事项详解(26)
|
7月前
|
数据挖掘 Go 数据库
Go语言map这么查询 才是高手风范
Go语言map这么查询 才是高手风范
127 0