一、 引用类型

引用类型理解为(C语言):指针

Golang中只有三种引用类型:slice(切片)、map(字典)、channel(管道);

实例1-1

package main

import "fmt"

func main(){
a := []int{, , , , }
b := a
fmt.Println(a,b)
b[] =
fmt.Println(a,b)
}

执行结果:

解释:

上面定义了一个数组a,它是引用类型(slice切片),被b引用(指针)后,当b发生变化后a也发生变化。

二、 值类型

Go语言中除slice(切片)、map(字典)、channel(管道)外,都是值类型;

值类型可以理解为值的拷贝,相当于完全拷贝一份(有副本存在)。

实例2-1

package main

import "fmt"

func main(){
a := []int{, , , , }
b := a
fmt.Println(a,b)
b[] =
fmt.Println(a,b)
}

执行结果:

解释:

上面定义了一个数组a,它是值类型,复制给b是copy,当b发生变化后a并不会发生任何变化。

最新文章

  1. Android深度探索--HAL与驱动开发----第九章读书笔记
  2. 抓包利器Fiddler
  3. XX管理系统案例
  4. 用php 查询显示新闻消息
  5. 将多维数组转换为支持curl提交的一维数组格式
  6. Graphviz使用简介(中文乱码的问题)
  7. Qt 读写XML文件
  8. pyqt MainWindow记录内容
  9. 双链表---LinkedList的重写
  10. 清除css、javascript及背景图在浏览器中的缓存
  11. WARN Session 0x0 for server null, unexpected error, closing socket connection and attempting reconnect (org.apache.zookeeper.ClientCnxn)
  12. [wiki]CDN
  13. SpringCloud @FeignClient的类注解@ReqestMapping无效报错:No message available","path":"/xxxx
  14. cucumber学习笔记
  15. C++多态、虚函数、纯虚函数、抽象类、虚基类
  16. centos 7 Chrony 集群同步时间
  17. [Leetcode 217&219]寻找数组中的重复值Contains Duplicate I & II
  18. UVA 11645 - Bits(数论+计数问题)
  19. 关于PHP面向对象中—类的定义与对象的实例化操作以及构造、析构函数的特殊用法
  20. FileZilla FTP Client

热门文章

  1. ubuntu16部署gitlab
  2. android 获取sharedpreference的三种方法的区别
  3. 使用git将代码传到github
  4. const 和 #define区别
  5. css选择器的一些说明
  6. Bulma 源码解析之 .columns 类
  7. TinkerPop中的遍历:图的遍历中谓词、栅栏、范围和Lambda的说明
  8. 2016年第七届蓝桥杯省赛试题(JavaA组)
  9. C# WinForm:无法访问已释放的对象
  10. C#中的线程池使用(二)