Функция slices.Concat

Функция slices.Concat объединяет несколько слайсов в один новый слайс. Она принимает любое количество слайсов одного типа в качестве аргументов и возвращает новый слайс, содержащий все элементы из переданных слайсов в порядке их следования. Первый слайс становится началом нового слайса, второй - продолжением, и так далее.

Синтаксис

goslices.Concat(slices...)

Пример

Давайте объединим два слайса строк в один:

gopackage main

import (
  "fmt"
  "slices"
)

func main() {
  slice1 := []string{"a", "b", "c"}
  slice2 := []string{"d", "e"}

  res := slices.Concat(slice1, slice2)
  fmt.Println(res)
}

Результат выполнения кода:

go[a b c d e]

Пример

Давайте объединим три слайса чисел в один:

gopackage main

import (
  "fmt"
  "slices"
)

func main() {
  slice1 := []int{1, 2}
  slice2 := []int{3, 4}
  slice3 := []int{5, 6}

  res := slices.Concat(slice1, slice2, slice3)
  fmt.Println(res)
}

Результат выполнения кода:

go[1 2 3 4 5 6]

Пример

Давайте передадим один слайс в функцию - результатом будет его копия:

gopackage main

import (
  "fmt"
  "slices"
)

func main() {
  original := []int{1, 2, 3}

  res := slices.Concat(original)
  fmt.Println(res)
}

Результат выполнения кода:

go[1 2 3]

Смотрите также

  • функцию append,
    которая добавляет элементы в слайс
  • функцию slices.Clone,
    которая создает копию слайса
  • функцию slices.Insert,
    которая вставляет элементы в слайс по индексу
  • функцию copy,
    которая копирует элементы между слайсами