假设我有数组A并且B在 Go 中。什么是追加的所有值最快的方式B来A?
1 回答
明月笑刀无情
TA贡献1828条经验 获得超4个赞
Go 中的数组是次要的,切片是要走的路。Go 提供了一个内置append()函数来附加切片:
a := []int{1, 2, 3}
b := []int{4, 5}
a = append(a, b...)
fmt.Println(a)
输出:
[1 2 3 4 5]
在Go Playground上试一试。
笔记:
Go 中的数组是固定大小的:一旦创建了数组,就无法增加其大小,因此无法向其追加元素。如果必须这样做,则需要分配一个新的更大的数组;大到足以容纳 2 个数组中的所有元素。切片更加灵活。
Go 中的数组是如此“不灵活”,以至于即使数组的大小也是其类型的一部分,因此例如数组类型[2]int与类型不同,[3]int因此即使您创建一个辅助函数来添加/附加类型的数组,[2]int您也无法' t 使用它来附加类型的数组[3]int!
- 1 回答
- 0 关注
- 160 浏览
添加回答
举报
0/150
提交
取消