目录
描述
语法和参数
使用示例
注意事项
删除不存在的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中的键值对也不是线程安全的。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)