英文:
How to increase array size
问题
假设我有一个数组:
array1 := [5]int {
1,2,3,4,5,
}
我需要增加这个数组的大小。
- 在Go语言中,如何增加数组的大小以便添加额外的元素?
如果我有另一个数组:
array2 := [5]int {
6,7,8,9,10,
}
- 如何将
array2
追加到array1
?
然后array1
将打印出[1,10]
for i:=0; i<len(array1); i++ {
fmt.Print(array1[i], ",")
}
输出:
1,2,3,4,5,6,7,8,9,10
英文:
Suppose I have an array
array1 := [5]int {
1,2,3,4,5,
}
And I need to increase this array size.
- How can I increase array size in
go
so that I can add additional element?
If I have another array
array2 := [5]int {
6,7,8,9,10,
}
- How can I append
array2
witharray1
?
Then array1
will print [1,10]
for i:=0; i<len(array1); i++ {
fmt.Print(array1[i], "," )
}
Output:
1,2,3,4,5,6,7,8,9,10
答案1
得分: 12
唯一改变数组大小的方法是创建一个新数组。你可以使用切片(slice),它的行为类似于数组,但可以动态调整大小。你可以使用append
方法向切片中添加元素。
slice1 := []int{1,2,3,4,5}
slice2 := []int{6,7,8,9,10}
slice1 = append(slice1, slice2...)
for v, _ := range slice1 {
fmt.Println(v)
}
以上代码将把slice2
中的元素追加到slice1
中,并打印出slice1
中的每个元素。
英文:
The only way to 'resize' an array is to make a new one. You can use a slice which behaves much like an array, but is resized dynamically for you. You use the append
method to add items to a slice.
slice1 := []int{1,2,3,4,5}
slice2 := []int{6,7,8,9,10}
slice1 = append(slice1, slice2...)
for v, _ := range slice1 {
fmt.Println(v)
}
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论