下面这段代码输出什么?
func main() {
s := make(map[string]int)
delete(s, "h")
fmt.Println(s["h"])
}
- A. runtime panic
- B. 0
- C. compilation error
下面这段代码输出什么?
func main() {
s := make(map[string]int)
delete(s, "h")
fmt.Println(s["h"])
}
`单行代码`
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的键值对时,返回值类型对应的零值,所以返回 0。
get
m
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的键值对时,返回值类型对应的零值,所以返回 0。
m
m
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的键值对时,返回值类型对应的零值,所以返回 0。
查询了不存在的 key 所以值为0
m
B 今天这题好简单
m
B. 0 获取map不存在的键,得到零值。
打卡
mark
b
打卡
换成这个效果更佳。:smile:
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的键值对时,返回值类型对应的零值,所以返回 0。
打卡
基础题
remark
不存在的键值对删除和获取
打卡
我好像在公众号看过这一题
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的减值对时,返回值类型对应的零值,所以返回 0。
mark
1
mark
remark....,
mark 这个还真不知道 使用map时总是判断是否存在了。
mark
删除 map 不存在的键值对时,不会报错,相当于没有任何作用;获取不存在的减值对时,返回值类型对应的零值,所以返回 0。
mark
mark
mark
mark
删除map不存在的键值对时,不会报错,相当于没有任何作用,获取不存在的键值对时,返回值为对应类型的零值,所以返回0