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

go基础——数值传递与值传递

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

import "fmt"

/*
1.值类型:存储的是数值本身,数据传递给其他变量时传递的是数据的副本。
	int,float,string,bool,array,struct
2.引用类型:存储的是数据的内存地址,数据传递时传递的地址。默认零值是nil
	slice,map,channel,function,pointer
*/
func main() {
	s1 := []int{1, 2, 3, 4}
	s2 := make([]int, 0)
	s2 = append(s2, s1...) //数值传输
	s3 := s1               //地址传输
	fmt.Println(s1, s2, s3)

	s1[0] = 100
	fmt.Println(s1, s2, s3)

	//copy()
	s4 := []int{1, 2, 3, 4}
	s5 := []int{7, 8, 9}
	//copy(s4, s5)	//将s5中的元素复制到s4中,覆盖对应位置
	copy(s4[1:], s5[1:])
	fmt.Println(s4, s5)

}

执行结果

[1 2 3 4] [1 2 3 4] [1 2 3 4]
[100 2 3 4] [1 2 3 4] [100 2 3 4]
[1 8 9 4] [7 8 9]

鲜花

握手

雷人

路过

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

请发表评论

全部评论

专题导读
上一篇:
解决go get命令下载包出问题发布时间:2022-07-10
下一篇:
Go语言学习笔记十八-练习篇-Go语言版学生信息管理系统发布时间: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