网创优客建站品牌官网
为成都网站建设公司企业提供高品质网站建设
热线:028-86922220
成都专业网站建设公司

定制建站费用3500元

符合中小企业对网站设计、功能常规化式的企业展示型网站建设

成都品牌网站建设

品牌网站建设费用6000元

本套餐主要针对企业品牌型网站、中高端设计、前端互动体验...

成都商城网站建设

商城网站建设费用8000元

商城网站建设因基本功能的需求不同费用上面也有很大的差别...

成都微信网站建设

手机微信网站建站3000元

手机微信网站开发、微信官网、微信商城网站...

建站知识

当前位置:首页 > 建站知识

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怎么判断key是否在map中
当前链接:http://bjjierui.cn/article/pcpsho.html

其他资讯