Loading [MathJax]/jax/input/TeX/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >golang判断map中key是否存在的方法

golang判断map中key是否存在的方法

作者头像
用户1214487
发布于 2020-09-14 06:36:40
发布于 2020-09-14 06:36:40
10K00
代码可运行
举报
文章被收录于专栏:PythonPython
运行总次数:0
代码可运行
代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import "fmt"

func main() {
    dict := map[string]int{"key1": 1, "key2": 2}
    value, ok := dict["key1"]
    if ok {
        fmt.Printf(value)
    } else {
        fmt.Println("key1 不存在")
    }
}

以上就是golang中判断map中key是否存在的方法

还有一种简化的写法是

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
import "fmt"

func main() {
    dict := map[string]int{"key1": 1, "key2": 2}
    if value, ok := dict["key1"]; ok {
        fmt.Printf(value)
    } else {
        fmt.Println("key1 不存在")
    }
}

之所以能这么写是因为,这是if判断的一种高级用法

上面这种写法的意思是,在 if 里先运行表达式

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
value, ok := dict["key1"]

,得到变量后,再对这个变量进行判断

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2020-09-10 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
3.Go编程快速入门学习
比如:var a [5]int, 数组的长度必须是常量,并且长度是数组类型的一部分。一旦定义,长度不能变。注意: [5]int和[10]int是不同的类型。
全栈工程师修炼指南
2022/09/29
3970
3.Go编程快速入门学习
golang教程
这里有两个关键点。 - 其一是defer关键字。defer语句的含义是不管程序是否出现异常,均 在函数退出时自动执行相关代码。 - 其二是Go语言的函数允许返回多个值。
陨石坠灭
2020/01/21
1.2K0
golang教程
面试用 Golang 手撸 LRU
上周参加一个云原生 DevOps 开发的面试,第一轮面试问一些技能、项目相关问题,最后留了 20 分要求用 Golang 实现 LRU。
云原生Space
2023/06/10
5430
面试用 Golang 手撸 LRU
go基础之--函数和map
在整理函数之前先整理一下关于指针 指针 普通类型变量存的就是值,也叫值类型。指针类型存的是地址,即指针的值是一个变量的地址。 一个指针指示值所保存的位置,不是所有的值都有地址,但是所有的变量都有。使用指针可以在无序知道 变量名字的情况下,间接读取或更新变量的值。 获取变量的地址,用&,例如:var a int 获取a的地址:&a,&a(a的地址)这个表达式获取一个指向整形变量的指针,它的类型是整形指针(*int),如果值叫做p,我们说p指向x,或者p包含x的地址,p指向的变量写成 *p ,而*p获取变量的值
coders
2018/03/30
5670
go基础之--函数和map
Golang高效实践之泛谈篇
我博客之前的Golang高效实践系列博客中已经系统的介绍了Golang的一些高效实践建议,例如:《Golang高效实践之interface、reflection、json实践》、《Golang 高效实践之defer、panic、recover实践》、《Golang 高效实践之并发实践context篇》、《Golang 高效实践之并发实践channel篇》,本文将介绍一些零散的Golang高效实践建议,虽然琐碎但是比较重要。
用户2937493
2019/08/29
4620
go中的map和锁
Go中的map和锁 声明和初始化 只声明, var gMap map[string] string 使用var声明 声明初始化 var hMap = map[string]string 使用make初始化 package main import "fmt" func main() { var m = make(map[string]string) m["name"] = "Wyc" fmt.Println(m) } 增删改查 package main import ( "fmt" ) fu
Wyc
2023/02/27
4780
golang学习笔记——map类型
m2 := map[int]string{1: "hello", 2: "world"}
码缘
2021/03/04
4960
Golang 基础之基础语法梳理 (三)
接口 (interface) 定义了一个对象的行为规范, 只定义规范不实现,由具体的对象来实现规范的细节。
帽儿山的枪手
2022/03/20
5500
Golang 基础之基础语法梳理 (三)
golang之map数据类型
先上代码…… package main import "fmt" func testMap() { //两种声明map方式,切记,必须初始化才能用,否则panic //var a map[string]string = map[string]string{ // "key": "value", //} a := make(map[string]string, 10) a["abc"] = "efg" //map的key是唯一的,修改值可以直
超蛋lhy
2018/08/31
6720
Golang-Map
map是一种无序的基于key-value的数据结构,Go语言中的map是引用类型,必须初始化才能使用。
PayneWu
2020/12/18
5370
Golang 基础之基础语法梳理 (一)
第三部分 main函数定义,在go语言中,代码如果需要跑起来,代码必须要有main函数作为入口。
帽儿山的枪手
2022/03/18
3640
Golang 基础之基础语法梳理 (一)
Golang map使用注意事项
map 是 Golang 中的方便而强大的内建数据结构,是一个同种类型元素的无序组,元素通过另一类型唯一的键进行索引。其键可以是任何相等性操作符支持的类型, 如整数、浮点数、复数、字符串、指针、接口(只要其动态类型支持相等性判断)、结构以及数组。 切片不能用作映射键,因为它们的相等性还未定义。与切片一样,映射也是引用类型。 若将映射传入函数中,并更改了该映射的内容,则此修改对调用者同样可见。未初始化的映射值为 nil。
恋喵大鲤鱼
2019/06/14
1.3K0
A Bite of GoLang(上)
A bite of GoLang(浅尝GoLang),本文只是Go语言的冰山一角,本文包含作者学习Go语言期间积累的一些小的经验,同时为了方便让读者了解到Go语言中的一些概念,文中包含了许多快速简洁的例子,读者后期可以去自行拓展。当然写这篇文章的灵感来源于GitHub上的 a bite of Python
盛国存
2018/05/14
1.2K4
A Bite of GoLang(上)
Go语言学习笔记一 Golang的安装与基础
Go语言是一个静态强类型的语言 Go语言的安装与其他语言有所不同。通过官网下载压缩包(或msi)来自定义文件夹安装。
摸鱼的G
2023/02/22
7150
Go语言学习笔记一 Golang的安装与基础
Golang之旅33-map映射
切片的数据类型如果是map,则称之为slice of map,map切片。map的个数能够动态增加。
皮大大
2021/03/02
3620
Golang高效实践之array、slice、map实践
Golang的slice类型为连续同类型数据提供了一个方便并且高效的实现方式。slice的实现是基于array,slice和map一样是类似于指针语义,传递slice和map并不涉及底层数据结构的拷贝,相当于传递底层数据结构的指针。
用户2937493
2019/08/29
7310
Golang高效实践之array、slice、map实践
Go 语言之 Maps 详解:创建、遍历、操作和注意事项
Maps用于以键值对的形式存储数据值。Maps中的每个元素都是一个键值对。Maps是一个无序且可更改的集合,不允许重复。Maps的长度是其元素的数量。您可以使用 len() 函数来查找长度。Maps的默认值是 nil。Maps保存对底层哈希表的引用。
小万哥
2023/09/09
2920
Go 语言之 Maps 详解:创建、遍历、操作和注意事项
【Golang】快速复习指南QuickReview(八)——goroutine
goroutine是Golang特有,类似于线程,但是线程是由操作系统进行调度管理,而goroutine是由Golang运行时进行调度管理的用户态的线程。
DDGarfield
2022/06/23
3460
Go 复合类型之字典类型介绍
map 是 Go 语言提供的一种抽象数据类型,它表示一组无序的键值对。用 key 和 value 分别代表 map 的键和值。而且,map 集合中每个 key 都是唯一的:
贾维斯Echo
2023/10/18
2290
Go 复合类型之字典类型介绍
Go数据类型
go语言数据类型按语言类可分为布尔型、数字类型、字符串类型、派生类型;其中派生类型包含指针、数组、函数、map、接口、切片等;布尔型和字符串类型和常规的差不多,不做介绍
用户9022575
2021/10/01
4300
相关推荐
3.Go编程快速入门学习
更多 >
领券
💥开发者 MCP广场重磅上线!
精选全网热门MCP server,让你的AI更好用 🚀
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
本文部分代码块支持一键运行,欢迎体验
本文部分代码块支持一键运行,欢迎体验