代码
https://github.com/fangkang7/goLearngit
案例
在这个案例中咱们第一次定义的切片长度为2 那么他的容器就是2github
可是在扩容了一个4后 容器就不够了就会翻倍为4微信
再一次扩容5和6时容量就又不够了,就会翻倍为8
app
package main import "fmt" /** cap(slice)获取切片的容器 切片建立初期,容器等于长度 动态扩张时,一旦容量没法知足,就会以翻倍的策略进行扩张 */ func main() { var slice = []int{ 1, 2} fmt.Printf("slice的长度是%d,容量是%d\n", len(slice), cap(slice)) slice = append(slice, 4) fmt.Printf("slice的长度是%d,容量是%d\n", len(slice), cap(slice)) slice = append(slice, 5, 6) fmt.Printf("slice的长度是%d,容量是%d\n", len(slice), cap(slice)) }