Go语言学习之使用映射|Go主题月

348 阅读2分钟

作者:看那个码农

公众号:看那个码农

上期内容介绍了Go语言学习之使用切片|Go主题月

  • 切片的使用
  • 为什么要用切片?
  • 声明切片
  • 使用make函数构造切片
  • 从数组或切片生成新的切片
  • 表示原有的切片
  • 重置切片,清空拥有的元素
  • 在切片中添加元素
  • 在切片中删除元素
  • 复制切片中的元素

本篇内容将继续带领大家走进Go语言的世界。

1.本文简介

Go语言学习之使用映射

2.映射的使用

在Go语言中,业务和算法中需要使用任意类型的关联关系时,需要使用映射。

如:居民和身份证号的对应,车辆和车牌号的对应。

  • 数组和切片是可通过索引值访问的元素集合,而映射是通过键来访问的无序元素编组。
  • 映射也称为关联数组。
  • Go语言中提供的映射关系容器为map,map使用哈希表实现。

3.映射的定义

Go语言中map的定义是这样的

Map[KeyType]ValueType

  • KeyType为键类型
  • ValueType是键对应的值类型

一个map中,符合KeyTypeValueType的映射总是成对出现的。

只需要一行代码就可声明并创建一个空映射。

var str=make(map[string]int)

这行代码的解读如下:

  • 关键词var声明了一个名为str的变量
  • 在等号的右边,使用Go语言内置函数make创建了一个映射,其键的类型为字符串,而值的类型为整数。
  • 将这个空映射赋给了变量str。

4.映射中添加元素

我们用下面的这串代码展示在映射中添加元素的过程。

package main

import "fmt"

func main(){
   var str=make(map[string]int)
   str["First"]=1
   str["Second"]=2
   str["Third"]=3
   fmt.Printf("First对应的值为:%v,\nSecond对应的值为:%v,\nThird对应的值为:%v,\n",str["First"],str["Second"],str["Third"])
}

输出为

image.png

5.映射中删除元素

要从映射中删除元素,可使用内置函数delete()

格式如下:

Delete(map,键)

  • map为删除的map实例
  • 键为要删除的map键值对应的键

具体代码为:

package main

import "fmt"

func main(){
   var str=make(map[string]int)
   str["First"]=1
   str["Second"]=2
   str["Third"]=3
   fmt.Printf("原始映射为:%v\n",str)
   delete(str,"First")
   fmt.Printf("删除元素后的映射为:%v\n",str)
}

输出为

image.png

6.遍历map的“键值对”

遍历map的键值对可以使用for range循环完成。

具体代码如下:

package main

import "fmt"

func main(){
   var str=make(map[string]int)
   str["First"]=1
   str["Second"]=2
   str["Third"]=3

   for k,v:=range str{
      fmt.Println(k,v)
   }
}

输出为:

image.png

如果你觉得这篇内容对你有帮助的话:

1、点赞支持下吧,让更多的人也能看到这篇内容

2、关注公众号:看那个码农,我们一起学习一起进步。