> 今天编写了map结构数据存储程序,map的key总数:22046个,通过for```range方法遍历map发现,遍历打印的结果与实际存储内容不符,主要是存储结果数量和值正确,打印出来的值少了。
- 以下是打印结果
```go
keys:0xE7A0 values:0x942E
keys:0xE9E6 values:0x6B92
keys:0xF5F2 values:0x8E9C
keys:0xF7F0 values:0x9EDF
======================= 以上使用range遍历结果 ====================
获取0xFE4E值:0xFA28
总数:22046
```
- 以下是存储数据结构示意
```go
0xF7F0 0x9EDF
...
0xFE4E 0xFA28
```
- 打印代码
```go
func PrintMap() {
lineCounter := 0
for k, v := range gbToUnicode {
fmt.Printf("keys:%s\tvalues:%s\n", k, v)
lineCounter ++
}
fmt.Println("======================= 以上使用range遍历结果 ====================")
fmt.Printf("获取0xFE4E值:%s\t总数:%d\n",gbToUnicode["0xFE4E"],lineCounter)
}
```
有疑问加站长微信联系(非本文作者)