Go內建函式copy

2022-04-04 00:29:32 字數 1063 閱讀 5644

go內建函式copy:

func copy(dst, src type) int

用於將源slice的資料(第二個引數),複製到目標slice(第乙個引數)。

返回值為拷貝了的資料個數,是len(dst)和len(src)中的最小值。

看**:

package main

import (

"fmt")

func main()

var s = make(int, 6)

//源長度為8,目標為6,只會複製前6個

n1 :=copy(s, a)

fmt.println(

"s -

", s)

fmt.println(

"n1 -

", n1) //

源長為7,目標為6,複製索引1到6

n2 := copy(s, a[1

:])fmt.println(

"s -

", s)

fmt.println(

"n2 -

", n2) //

源長為8-5=3,只會複製3個值,目標中的後三個值不會變

n3 := copy(s, a[5

:])fmt.println(

"s -

", s)

fmt.println(

"n3 -

", n3) //

將源中的索引5,6,7複製到目標中的索引3,4,5

n4 := copy(s[3:], a[5

:])fmt.println(

"s -

", s)

fmt.println(

"n4 -

", n4)

}

執行結果:

s - [0 1 2 3 4 5]

n1 - 6

s - [1 2 3 4 5 6]

n2 - 6

s - [5 6 7 4 5 6]

n3 - 3

s - [5 6 7 5 6 7]

n4 - 3

go 內建函式

以下是乙個簡單的列表,我們會在後面的章節中對它們進行逐個深入的講解。名稱說明 close 用於管道通訊 len cap len 用於返回某個型別的長度或數量 字串 陣列 切片 map 和管道 cap 是容量的意思,用於返回某個型別的最大容量 只能用於切片和 map new make new 和 ma...

Go內建函式

2 package main 3 4 import 5 fmt 6 7 8 func main 11 var arr3 string 12 14 fmt.println arr2 15 16 copy arr3,arr1 17 fmt.println arr3 18 19 arr3 make str...

Go常用內建函式

make函式宣告func make t type,size integertype type 內建函式make 主要為slice,map,channel做分配空間和初始化。make的返回值和它傳入的第一引數型別一致,返回的不是指標 1 第乙個引數是slice 若第乙個引數型別後只有乙個引數,這個引數...