全球观速讯丨golang map怎么删除元素

时间:2022-12-08 19:03:08       来源:PHP中文网

本教程操作环境:windows7系统、GO 1.18版本、Dell G3电脑。


(资料图片仅供参考)

Go语言中 map 是一种特殊的数据结构,一种元素对(pair)的无序集合,pair 对应一个 key(索引)和一个 value(值),所以这个结构也称为关联数组或字典,这是一种能够快速寻找值的理想结构,给定 key,就可以迅速找到对应的 value。

Go语言map元素的删除和清空

1、使用 delete() 函数从 map 中删除键值对

Go语言提供了一个内置函数 delete(),用于删除容器内的元素,下面我们简单介绍一下如何用 delete() 函数删除 map 内的元素。

使用 delete() 内建函数从 map 中删除一组键值对,delete() 函数的格式如下:

delete(map, 键名)
登录后复制

其中 map 为要删除的 map 实例,键为要删除的 map 中键值对的键。【相关推荐:Go视频教程、编程教学】

从 map 中删除一组键值对可以通过下面的代码来完成:

scene := make(map[string]int)// 准备map数据scene["route"] = 66scene["brazil"] = 4scene["china"] = 960delete(scene, "brazil")for k, v := range scene {    fmt.Println(k, v)}
登录后复制

代码输出如下:

这个例子中使用 delete() 函数将 brazil 从 scene 这个 map 中删除了。

2、清空 map 中的所有元素

有意思的是,Go语言中并没有为 map 提供任何清空所有元素的函数、方法,清空 map 的唯一办法就是重新 创建 一个新的 map,不用担心垃圾回收的效率,Go语言中的并行垃圾回收效率比写一个清空函数要高效的多。

声明新map的方法:

var mapname map[keytype]valuetype
登录后复制

其中:

mapname 为 map 的变量名。

keytype 为键类型。

valuetype 是键对应的值类型。

在声明的时候不需要知道 map 的长度,因为 map 是可以动态增长的,未初始化的 map 的值是 nil,使用函数 len() 可以获取 map 中 pair 的数目。

更多编程相关知识,请访问:编程视频!!

以上就是golang map怎么删除元素的详细内容,更多请关注php中文网其它相关文章!

关键词: 垃圾回收 相关文章 下面我们