Go delete函数:从map中删除键值对

Go delete函数:从map中删除键值对,第1张

目录

描述

语法和参数

使用示例

注意事项

删除不存在的key

删除的key为nil

线程安全


描述

delete函数是Go的内置函数,它按照指定的键将元素从map中删除。若要删除的键为 nil 或在map中不存在,delete 不进行任何 *** 作。

语法和参数

函数签名

func delete(m map[Type]Type1, key Type)
参数名称含义
m要 *** 作的map
key从m中要被移除的键

返回值:delete函数没有任何返回值。

使用示例

使用delete函数删除map中的键值对:

package main

import "fmt"

func main() {
	demo := make(map[string]interface{})
	demo["code"] = "Golang"
	demo["author"] = "Robert Griesemer"
	delete(demo, "author")
	fmt.Println(demo)
	// outputs: map[code:Golang]
}

注意事项 删除不存在的key

删除不存在的key时,delete不进行 *** 作。

package main

import "fmt"

func main() {
	demo := make(map[string]interface{})
	delete(demo, "author")
	fmt.Println(demo)
	// outputs: map[]
}
删除的key为nil

删除的key为nil时,delete不进行 *** 作。

package main

import "fmt"

func main() {
	demo := make(map[interface{}]interface{})
	demo["platform"] = "CentOS"
	delete(demo, nil)
	fmt.Println(demo)
	// outputs: map[platform:CentOS]
}
线程安全

delete函数本身不存在“线程安全”的问题,由于map数据结构本身不是线程安全的,所以使用delete删除map中的键值对也不是线程安全的。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/995936.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-21
下一篇 2022-05-21

发表评论

登录后才能评论

评论列表(0条)

保存