• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

Go内建函数copy

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

Go内建函数copy:

func copy(dst, src []Type) int

用于将源slice的数据(第二个参数),复制到目标slice(第一个参数)。

返回值为拷贝了的数据个数,是len(dst)和len(src)中的最小值。

看代码:

package main

 

import (

"fmt"

)

 

func main() {

var a = []int{0, 1, 2, 3, 4, 5, 6, 7}

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


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
vue-route中this.$router.go()和this.$router.push()的差别发布时间:2022-07-10
下一篇:
surface go重新做系统 - PorkerFace发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap