РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
227 of 1593 menu

Функция copy

Функция copy копирует элементы из исходного слайса в целевой слайс. В первый параметр мы передаем целевой слайс (куда копируем), во второй параметр мы передаем исходный слайс (откуда копируем). Функция возвращает количество скопированных элементов, которое равно минимальной длине из двух слайсов.

Синтаксис

copy(dst, src)

Пример

Давайте скопируем элементы из одного слайса в другой:

package main import "fmt" func main() { src := []string{"a", "b", "c", "d", "e"} dst := make([]string, 3) n := copy(dst, src) fmt.Printf("Copied: %d\n", n) fmt.Println("dst:", dst) }

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

"Copied: 3" "dst: [a b c]"

Пример

Давайте скопируем все элементы в слайс большей длины:

package main import "fmt" func main() { src := []string{"a", "b", "c"} dst := make([]string, 5) n := copy(dst, src) fmt.Printf("Copied: %d\n", n) fmt.Println("dst:", dst) }

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

"Copied: 3" "dst: [a b c ]"

Пример

Давайте скопируем часть элементов с помощью среза:

package main import "fmt" func main() { src := []int{1, 2, 3, 4, 5} dst := make([]int, 2) n := copy(dst, src[2:4]) fmt.Printf("Copied: %d\n", n) fmt.Println("dst:", dst) }

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

"Copied: 2" "dst: [3 4]"

Пример

Давайте скопируем элементы между существующими слайсами с перезаписью:

package main import "fmt" func main() { dst := []string{"x", "y", "z"} src := []string{"a", "b", "c", "d"} n := copy(dst, src) fmt.Printf("Copied: %d\n", n) fmt.Println("dst:", dst) }

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

"Copied: 3" "dst: [a b c]"

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

  • функцию append,
    которая добавляет элементы в слайс
  • функцию len,
    которая возвращает длину слайса
  • функцию cap,
    которая возвращает емкость слайса
  • функцию clear,
    которая очищает слайс
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить