今日总结
工作上还是忙,今天学习了go的map语法。
学到的知识点
1. 初始化map有两种方式
// 1. 使用make
a := make(map[string]int, 3) // 可以指定容量 也可以省,指定后可以超过这个容量值
// 2. 直接推断
b := map[string]int{
"张三" : 100, // 冒号紧紧挨着key
"李四": 200,
}
2. 判断key是否存在
value, ok := b["张"] // 值在前
3. 删除某个key
delete(b, "张三")
4. 循环map
是通过for range实现
// for这里没有括号哦 注意 注意
for key,val := range b {
fmt.Printf("key: %s, value: %v\n", key, val)
}
5. 切片map
发现切片的长度自动扩展需要通过append触发
mapSlice := make([]map[string]int, 3) // 注意这里必须指定切片长度
mapSlice[0] = make(map[string]int)
mapSlice[1] = make(map[string]int)
fmt.Printf("%#v\n", mapSlice)
明日安排
学习go的切片
网友评论