go 扩容问题
//情景二 : 如果需要的容量 小于 当前容量 * 2 且 当前容量 少于 1024
s1 := make([]int, 1022, 1024) // 原有容量大于等于 1024 则 扩容规则为 oldcap + = oldcap *0.25 则结果应为 1280
fmt.Printf("原始切片的长度 %d 切片容量 %d \n", len(s1), cap(s1))
s1 = append(s1, 1, 2, 3)
fmt.Printf("新切片的长度 %d 切片容量 %d \n", len(s1), cap(s1)) //但实际结果为 1536
//输出结果
输出结果
按照扩容规则 新的容量大小应该为 1280 才对 但输出结果 新的容量大小为 1536