英文:
How to insert element at the beginning of a slice?
问题
我有一个切片:
mySlice := []int{4,5,6,7}
myelement := 3
我想在索引为0
的位置插入myelement
,使得输出为[3,4,5,6,7]
。
我该如何做到这一点?
英文:
I have a slice:
mySlice := []int{4,5,6,7}
myelement := 3
I want to insert myelement
at index 0
so that my output will be [3,4,5,6,7]
.
How can I do that?
答案1
得分: 5
你可以在这里使用append
属性。
首先,需要使用myelement
创建一个切片,然后将该切片附加到mySlice
中。
mySlice = append(myelement, mySlice...)
这是一个函数,它将返回将myelement
插入到slice
的第一个位置后的结果。
func addElementToFirstIndex(x []int, y int) []int {
x = append([]int{y}, x...)
return x
}
英文:
you can use the append
property here.
first, need to make a slice with the myelement
. then append the slice in mySlice
mySlice = append(myelement, mySlice...)
this is the function that will return the myelement
inserting in the first place of the slice
.
func addElementToFirstIndex(x []int, y int) []int {
x = append([]int{y}, x...)
return x
}
答案2
得分: 1
func addFirst(s []int, insertValue int) []int {
res := make([]int, len(s)+1)
copy(res[1:], s)
res[0] = insertValue
return res
}
另一种解决方案,前面的答案更好。
英文:
func addFirst(s []int, insertValue int) []int {
res := make([]int, len(s)+1)
copy(res[1:], s)
res[0] = insertValue
return res
}
Another solution, former answers are better.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论