登录
首页 >  Golang >  Go问答

删除地图中的键

来源:Golang技术栈

时间:2023-04-04 15:54:10 430浏览 收藏

知识点掌握了,还需要不断练习才能熟练运用。下面golang学习网给大家带来一个Golang开发实战,手把手教大家学习《删除地图中的键》,在实现功能的过程中也带大家重新温习相关知识点,温故而知新,回头看看说不定又有不一样的感悟!

问题内容

我有一张地图:

var sessions =  map[string] chan int{}

如何删除sessions[key]?我试过了:

sessions[key] = nil,false;

那没有用。

更新 (2011 年 11 月):

[Go 版本 1](https://docs.google.com/document/pub?id=1ny8uI- _BHrDCZv_zNBSthNKAMX_fR_0dc6epA6lztRE&pli=1)中删除了删除地图条目的特殊语法:

Go 1 将删除特殊的映射分配并引入一个新的内置函数delete:delete(m, x)将删除由表达式检索到的映射条目m[x]。...

正确答案

奇怪的是,

package main

func main () {
    var sessions = map[string] chan int{};
    delete(sessions, "moo");
}

似乎工作。不过,这似乎对资源的使用不佳!

另一种方法是检查是否存在并使用值本身:

package main

func main () {
    var sessions = map[string] chan int{};
    sessions["moo"] = make (chan int);
    _, ok := sessions["moo"];
    if ok {
        delete(sessions, "moo");
    }
}

好了,本文到此结束,带大家了解了《删除地图中的键》,希望本文对你有所帮助!关注golang学习网公众号,给大家分享更多Golang知识!

声明:本文转载于:Golang技术栈 如有侵犯,请联系study_golang@163.com删除
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>
评论列表