Go语言常见的点
map 引用不存在的键名不会报错
map 引用不存在的键名不会报错,返回所属类型的默认值
m := make(map[int]int)
m[10] = 14
fmt.Println("exists key value:", m[10])
fmt.Println("not exists key value:", m[1])
// result:
// exists key value: 14
// not exists key value: 0
range遍历map不会按输入顺序输出,而是随机输出
m := map[int]int{
1: 10,
2: 20,
3: 30,
}
for i := 0; i < 2; i++ {
fmt.Println("scan times :", i)
for i, v := range m {
fmt.Println("key:", i, "value", v)
}
fmt.Println("")
}
// result:
// scan times : 0
// key: 3 value 30
// key: 1 value 10
// key: 2 value 20
//
// scan times : 1
// key: 1 value 10
// key: 2 value 20
// key: 3 value 30