> 백엔드 개발 > Golang > 맵에 키가 존재하는지 확인하는 Golang 방법

맵에 키가 존재하는지 확인하는 Golang 방법

풀어 주다: 2019-12-13 14:20:34
원래의
12289명이 탐색했습니다.

맵에 키가 존재하는지 확인하는 Golang 방법

맵에 키가 존재하는지 확인하는 golang의 메소드 코드:

if _, ok := map[key]; ok {
//存在
}
로그인 후 복사

또한 golang은 키가 맵에 존재하는지 확인하는 메소드를 제공하지 않습니다. 항목이 배열에 있는지 판단합니다. 프로그램에서 이런 종류의 판단이 자주 사용되는 경우 배열의 멤버를 키로 사용하여 배열을 맵으로 변환한 다음 위의 방법을 사용하여 판단할 수 있습니다. 판단의 효율성을 향상시킵니다.

예:

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 방법의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿