当前位置: 首页GoGo基础正文 Go 语言是如何实现切片扩容的 Go基础 0 731 func main() { arr := make([]int, 0) for i := 0; i < 2000; i++ { fmt.Println("len 为", len(arr), "cap 为", cap(arr)) arr = append(arr, i) } } 我们可以看下结果依次是 0,1,2,4,8,16,32,64,128,256,512,1024 但到了 1024 之后,就变成了1024,1280,1696,2304 每次都是扩容了四分之一左右 GoCopy Go面试题 ㅤ永久会员 打赏 收藏 海报挣佣金 推广链接