You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

38 lines
985 B

  1. 1. 指针,用于表示内存地址的类型。
  2. 2. 切片,用于表示多个数据(数据集合)
  3. 3. 字典,用于表示键值对结合
  4. # 切片
  5. 切片,动态数组。
  6. 切片是Go中重要的数据类型,每个切片对象内部都维护着:数组指针、切片长度、切片容量 三个数据。
  7. # 字典
  8. Map的特点:
  9. - 键不能重复
  10. - 键必须可哈希(目前我们已学的数据类型中,可哈希的有:int/bool/float/string/array)
  11. - 无序
  12. ## Map底层原理剖析
  13. Golang中的Map有自己的一套实现原理,其核心是由`hmap`和`bmap`两个结构体实现。
  14. # 指针
  15. 指针,是一种数据类型,用于表示数据的内存地址。
  16. ```go
  17. // 声明一个 字符串类型 的变量(默认初始化值为空字符串)。
  18. var v1 string
  19. // 声明一个 字符串的指针类型 的变量(默认初始化值为nil)。
  20. var v2 *string
  21. var v3 int
  22. var v4 *int
  23. ```
  24. 数组的地址 == 数组的第一个元素的地址。