воскресенье, 10 мая 2020 г.

Как использовать функцию copy в Golang

Встроенная функция copy копирует элементы в целевой срез dst из исходного среза src.

func copy(dst, src []Type) int

Возвращает количество скопированных элементов, которое будет минимумом len(dst) и len(src). Результат не зависит от того, перекрываются ли аргументы.

Как особый случай, законно копировать байты из строки в срез байтов.

copy(dst []byte, src string) int

Примеры использования copy

Копировать из одного среза в другой

var s = make([]int, 3)
n := copy(s, []int{0, 1, 2, 3}) 
// n == 3, s == []int{0, 1, 2}

Скопировать из среза в сам срез

s := []int{0, 1, 2}
n := copy(s, s[1:]) 
// n == 2, s == []int{1, 2, 2}

Копировать из строки в байтовый срез (особый случай)

var b = make([]byte, 5)
copy(b, "Hello, world!") 
// b == []byte("Hello")


Читайте также:


Комментариев нет:

Отправить комментарий