Junior — Middle
Jak wstawić nowy element do centralnej części dynamicznej tablicy (layers)?
sobes.tech AI
Odpowiedź od AI
W Go, aby wstawić nowy element w środek slice’a, należy utworzyć nowy slice łączący części przed i po pozycji wstawiania oraz element do wstawienia. Na przykład, aby wstawić element x na pozycję i w slice’u s:
s = append(s[:i], append([]T{x}, s[i:]...)...)
Tutaj T to typ elementów slice’a. Ta metoda działa w następujący sposób:
- Pobieramy fragment od początku do pozycji
i(bezi):s[:i] - Tworzymy slice z jednym elementem
x:[]T{x} - Pobieramy fragment od pozycji
ido końca:s[i:] - Wewnętrzny
appendłączy element do wstawienia i ogon slice’a - Zewnętrzny
appenddodaje wszystko na początek
Przykład:
s := []int{1, 2, 4, 5}
x := 3
i := 2
s = append(s[:i], append([]int{x}, s[i:]...)...)
// s teraz: [1 2 3 4 5]
To jest standardowa metoda wstawiania w środek slice’a w Go.