面试题答案
一键面试package main
import "fmt"
func main() {
// 预分配容量为1000的map
myMap := make(map[string]int, 1000)
for i := 0; i < 1000; i++ {
key := fmt.Sprintf("key%d", i)
myMap[key] = i
}
// 打印map
fmt.Println(myMap)
}
在上述代码中,通过make(map[string]int, 1000)
预分配了能容纳1000个键值对的容量,这样在后续插入键值对时,可减少map动态扩容的次数,从而提升性能。