go语言map的使用

Go语言中的map(映射、字典)是一种内置的数据结构,它是一个无序的key—value键值对的集合,数据结构是堆,底层是使用哈希表实现的,属于引用类型。
四种方式创建map
make(map[string]string, 5)
make(map[string]string)
map[string]string{}
map[string]string{“v1”: “v2”, “v3”: “v4”, “v5”: “vN”}

map的使用

package main

import "fmt"

func main()  {
	m:=make(map[int]string,10)
	m[1]="test1"
	m[2]="test2"
	m[3]="test3"
	for k,v:=range m{		    		
		fmt.Println(k,v)	 				//因为map是无序,所以这个打印结果是随机的
	}
	for i:=1;i<len(m)+1;i++{				//正常打印
		fmt.Println(m[i])
	}
}

使用集合map

package main

import (
	"strconv"
	"fmt"
)

type UserInfo struct {
	ID 	  int
	Name  string
	age   int
}

func main()  {
	userDB:=make(map[int]UserInfo)
	//生成十条测试数据
	for i:=0;i<10;i++{
		name:="test"+strconv.Itoa(i)
		userDB[i]=UserInfo{i+100,name,10+i}
	}
	//对map进行查找
	for _,v:=range userDB{
		if v.ID==103{
			fmt.Printf("查找到ID为%d的人\n",v.ID)
		}
		if v.Name=="test5"{
			fmt.Printf("查找到Name为%v的人",v.Name)
		}
	}
}

发布了10 篇原创文章 · 获赞 0 · 访问量 616

猜你喜欢

转载自blog.csdn.net/weixin_38849917/article/details/99701768