golang判断key是否存在map中的方法代码:
if _, ok := map[key]; ok {
//存在
}
另外golang也没有提供item是否在array当中的判断方法,如果程序里面频繁用到了这种判断,可以将array转化为以array当中的成员为key的map再用上面的方法进行判断,这样会提高判断的效率。
示例:
package main
import "fmt"
func main() {
//声明并初始化一个map,key是int64类型,value是string类型
myMap := make(map[int64]string)
myMap[1] = "value1"
myMap[2] = "value2"
myMap[5] = "value5"
myMap[6] = "value6"
//声明一个int64数组,然后遍历数组,num是数组中的元素,下划线_代表元素的下标位置
for _, num := range []int64{1, 2, 3, 4, 5, 6} {
//不关心数组中的value,用下划线代替
//一般都习惯用ok变量表示是否包含,也可以用别的变量名字
if _, ok := myMap[num]; ok {
fmt.Printf("myMap中包含key:%d \n", num, )
} else {
fmt.Printf("myMap中不包含key:%d\n", num)
}
}
fmt.Println("=================分割线=======================")
for _, num := range []int64{1, 2, 3, 4, 5, 6} {
//如果包含key,想知道value,就把返回值赋给一个变量,这儿用变量v
//这儿用变量s表示是否包含指定的key
if v, s := myMap[num]; s {
fmt.Printf("myMap中包含key:%d,value值为:%s\n", num, v)
} else {
fmt.Printf("myMap中不包含key:%d\n", num)
}
}
}
运行后输出:
myMap中包含key:1
myMap中包含key:2
myMap中不包含key:3
myMap中不包含key:4
myMap中包含key:5
myMap中包含key:6
=================分割线=======================
myMap中包含key:1,value值为:value1
myMap中包含key:2,value值为:value2
myMap中不包含key:3
myMap中不包含key:4
myMap中包含key:5,value值为:value5
myMap中包含key:6,value值为:value6
更多golang知识请关注go语言教程栏目。
以上就是golang判断key是否存在map中的方法的详细内容,更多请关注php中文网其它相关文章!
声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。
程序员必备接口测试调试工具:点击使用
Apipost = Postman + Swagger + Mock + Jmeter
Api设计、调试、文档、自动化测试工具
网页生成APP,用做网站的技术去做APP:立即创建
手机网站开发APP、自助封装APP、200+原生模块、2000+映射JS接口按需打包
相关文章
相关视频