Функция slices.Replace
Функция slices.Replace заменяет элементы в слайсе
начиная с индекса i до индекса j
(не включая j) на новый набор элементов,
переданный в качестве аргумента v....
Параметр v... принимает переменное количество
элементов для вставки. Функция возвращает новый слайс
с произведенными заменами, при этом исходный слайс
остается неизменным.
Синтаксис
slices.Replace(slice, i, j, v...)
Пример
Давайте заменим элементы с индексами с 1 по 3
(не включая 3) в слайсе []string{"a", "b", "c", "d", "e"}
на новые элементы "x", "y":
package main
import (
"fmt"
"slices"
)
func main() {
slice := []string{"a", "b", "c", "d", "e"}
res := slices.Replace(slice, 1, 3, "x", "y")
fmt.Println(res)
}
Результат выполнения кода:
[a x y d e]
Пример
Давайте заменим элементы с индексами с 2 по 4
(не включая 4) в слайсе []int{1, 2, 3, 4, 5}
на новые элементы 10, 20, 30:
package main
import (
"fmt"
"slices"
)
func main() {
slice := []int{1, 2, 3, 4, 5}
res := slices.Replace(slice, 2, 4, 10, 20, 30)
fmt.Println(res)
}
Результат выполнения кода:
[1 2 10 20 30 5]
Пример
Давайте заменим элементы с индексами с 0 по 2
(не включая 2) в слайсе []string{"a", "b", "c", "d", "e"}
на один новый элемент "z":
package main
import (
"fmt"
"slices"
)
func main() {
slice := []string{"a", "b", "c", "d", "e"}
res := slices.Replace(slice, 0, 2, "z")
fmt.Println(res)
}
Результат выполнения кода:
[z c d e]
Пример
Давайте заменим элементы с индексами с 3 по 5
(не включая 5) в слайсе []int{1, 2, 3, 4, 5}
на три новых элемента 100, 200, 300:
package main
import (
"fmt"
"slices"
)
func main() {
slice := []int{1, 2, 3, 4, 5}
res := slices.Replace(slice, 3, 5, 100, 200, 300)
fmt.Println(res)
}
Результат выполнения кода:
[1 2 3 100 200 300]
Смотрите также
-
функцию
slices.Insert,
которая вставляет элементы в слайс -
функцию
slices.Delete,
которая удаляет элементы из слайса -
функцию
slices.Clone,
которая создает копию слайса -
функцию
slices.Concat,
которая объединяет несколько слайсов в один