首页 > 编程语言 > 详细

GO 语言使用copy 拷贝切片的问题

时间:2020-07-21 00:41:43      阅读:117      评论:0      收藏:0      [点我收藏+]

学习切片时候遇到一个问题,不知道是不是bug。用copy将较长的切片向较短的切片拷贝的时候,发现并没有成功。

copy() 函数的返回发生复制的元素的个数

 

package main

import "fmt"

func main(){

	s1 := []int{1,2,3}
	s2 := make([]int,10)
	fmt.Println(s1,s2)

	fmt.Println(copy(s1,s2),s1)
	fmt.Println(copy(s2,s1),s2)
}

 

输出结果显示将较长的切片向较短的切片拷贝的时候失败了,说明copy只能将长切片拷贝到短切片上,反过来就不行了。

输出如下:

[1 2 3] [0 0 0 0 0 0 0 0 0 0]
3 [0 0 0]
3 [0 0 0 0 0 0 0 0 0 0]

 

GO 语言使用copy 拷贝切片的问题

原文:https://www.cnblogs.com/mmtinfo/p/13348134.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!