Go语法要点:map(字典)

1.定义及初始化

func main() {
	gm := make(map[string]string) //[]内为下标类型,外为内容类型
	gm["bed"] = "床"
	gm["desk"] = "桌子"
	gm["book"] = "书"
	gm["computer"] = "电脑"
	fmt.Println(gm)

map[bed:床 book:书 computer:电脑 desk:桌子]
	/*用for...range形式输出*/
	 for c, e := range gm {
		fmt.Println(c, ":", e)
		}
}
bed : 床
desk : 桌子
book : 书
computer : 电脑

2.对map中的元素进行删除和查找

func main() {
	gm := make(map[string]string) //[]内为下标类型,外为内容类型
	gm["bed"] = "床"
	gm["desk"] = "桌子"
	gm["book"] = "书"
	gm["computer"] = "电脑"
	delete(gm, "bed")//删除下标为“bed”的元素
	fmt.Println("after del	", gm)//输出删除后的map全部元素
/*利用comma-ok进行查找,如果找到则输出查找的内容,否则则输出“不存在”*/
	if ch, ok := gm["bed"]; ok {
		fmt.Println("bed means", ch)
	} else {
		fmt.Println("bed is not exit")
	}
after del	 map[book:书 computer:电脑 desk:桌子]

bed is not exit.

3.map的应用
利用map做简单的学生信息系统的基础,根据学号查找学生信息

package main
import (
	"fmt"
)
type Stu struct {
	num   string
	name  string
	score int
}
func main() {
	var key string
	stumap := make(map[string]Stu)//内容类型为结构体
	stumap["2190400101"] = Stu{"2190400101", "夏洛克", 100}
	stumap["2190400102"] = Stu{"2190400102", "华生", 90}
	stumap["2190400103"] = Stu{"2190400103", "茉莉", 89}
	//初始化
	
	fmt.Println("input the id:")
	fmt.Scanln(&key)
	if stuval, ok := stumap[key]; ok {
		fmt.Println("found", stuval)
	} else {
		fmt.Println("not found")
	}
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值