Go (Golang) Slice: добавьте элемент в начало — методы с примерами кода

Чтобы добавить элемент в начало фрагмента в Go (Golang), у вас есть несколько вариантов. Вот несколько методов с примерами кода:

Метод 1: использование функции добавления

package main
import "fmt"
func main() {
    slice := []int{2, 3, 4, 5}
    element := 1
    // Prepend element using the append function and slicing
    slice = append([]int{element}, slice...)
    fmt.Println(slice) // Output: [1 2 3 4 5]
}

Метод 2. Использование функций копирования и создания

package main
import "fmt"
func main() {
    slice := []int{2, 3, 4, 5}
    element := 1
    // Prepend element using the copy and make functions
    newSlice := make([]int, len(slice)+1)
    copy(newSlice[1:], slice)
    newSlice[0] = element
    fmt.Println(newSlice) // Output: [1 2 3 4 5]
}

Метод 3. Использование пользовательской функции, похожей на добавление

package main
import "fmt"
func prepend(slice []int, element int) []int {
    slice = append(slice, 0)
    copy(slice[1:], slice)
    slice[0] = element
    return slice
}
func main() {
    slice := []int{2, 3, 4, 5}
    element := 1
    // Prepend element using a custom prepend function
    slice = prepend(slice, element)
    fmt.Println(slice) // Output: [1 2 3 4 5]
}