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

 所属分类:php教程

 浏览:60次-  评论: 0次-  更新时间:2022-09-30
描述:更多教程资料进入php教程获得。 php入门到就业线上直播课:进入学习API 文档、设计、调试、自动化测试一体化协作工具:点击使用golang判断...
更多教程资料进入php教程获得。

php入门到就业线上直播课:进入学习
API 文档、设计、调试、自动化测试一体化协作工具:点击使用

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中的方法的详细内容,更多请关注zzsucai.com其它相关文章!

 标签: golang,
积分说明:注册即送10金币,每日签到可获得更多金币,成为VIP会员可免金币下载! 充值积分充值会员更多说明»

讨论这个素材(0)回答他人问题或分享使用心得奖励金币

〒_〒 居然一个评论都没有……

表情  文明上网,理性发言!