searchusermenu
  • 发布文章
  • 消息中心
点赞
收藏
评论
分享
原创

GO数组笔记

2024-08-26 09:48:26
0
0

Go语言中的数组笔记

1. 数组的基本概念

在Go语言中,数组是一种固定大小的序列容器,用于存储相同类型的元素。数组的大小在声明时确定,之后不能改变。数组元素可以通过索引访问,索引从0开始。

2. 数组的声明与初始化

数组的声明包括类型和大小。初始化数组可以有几种方式:

  • 声明并初始化

    var nums [5]int // 声明一个长度为5的整型数组,元素默认为0
    
  • 初始化时赋值

    nums := [3]int{1, 2, 3} // 初始化一个长度为3的整型数组
    
  • 省略长度
    如果在初始化时提供了所有元素,可以省略长度:

    nums := [...]int{1, 2, 3, 4, 5} // Go会根据元素数量自动推断长度
    

3. 访问与修改数组元素

数组元素可以通过索引访问和修改:

nums := [5]int{1, 2, 3, 4, 5}
fmt.Println(nums[0]) // 输出第一个元素:1
nums[0] = 10         // 修改第一个元素为10

4. 遍历数组

可以使用for循环遍历数组的所有元素:

for i := range nums {
    fmt.Println("索引:", i, "值:", nums[i])
}

5. 数组的切片操作

虽然数组大小固定,但可以通过切片操作获取数组的一部分,形成新的切片:

a := [5]int{1, 2, 3, 4, 5}
slice := a[1:3] // 获取索引1到2的元素,形成切片

6. 多维数组

Go语言支持多维数组,即数组的元素也是数组:

var matrix [2][3]int
matrix[0][0] = 1

7. 数组与切片的区别

  • 大小:数组大小固定,切片大小可变。
  • 存储:数组存储在栈中,切片存储在堆中。
  • 功能:切片提供了更丰富的功能,如追加、缩容等。

结论

数组在Go语言中提供了基础的序列数据存储方式,适用于需要固定大小、性能敏感的场景。理解数组的使用和限制,对于Go语言的编程至关重要。在需要动态变化的序列数据时,考虑使用切片。

0条评论
0 / 1000
荣****睿
7文章数
0粉丝数
荣****睿
7 文章 | 0 粉丝
荣****睿
7文章数
0粉丝数
荣****睿
7 文章 | 0 粉丝
原创

GO数组笔记

2024-08-26 09:48:26
0
0

Go语言中的数组笔记

1. 数组的基本概念

在Go语言中,数组是一种固定大小的序列容器,用于存储相同类型的元素。数组的大小在声明时确定,之后不能改变。数组元素可以通过索引访问,索引从0开始。

2. 数组的声明与初始化

数组的声明包括类型和大小。初始化数组可以有几种方式:

  • 声明并初始化

    var nums [5]int // 声明一个长度为5的整型数组,元素默认为0
    
  • 初始化时赋值

    nums := [3]int{1, 2, 3} // 初始化一个长度为3的整型数组
    
  • 省略长度
    如果在初始化时提供了所有元素,可以省略长度:

    nums := [...]int{1, 2, 3, 4, 5} // Go会根据元素数量自动推断长度
    

3. 访问与修改数组元素

数组元素可以通过索引访问和修改:

nums := [5]int{1, 2, 3, 4, 5}
fmt.Println(nums[0]) // 输出第一个元素:1
nums[0] = 10         // 修改第一个元素为10

4. 遍历数组

可以使用for循环遍历数组的所有元素:

for i := range nums {
    fmt.Println("索引:", i, "值:", nums[i])
}

5. 数组的切片操作

虽然数组大小固定,但可以通过切片操作获取数组的一部分,形成新的切片:

a := [5]int{1, 2, 3, 4, 5}
slice := a[1:3] // 获取索引1到2的元素,形成切片

6. 多维数组

Go语言支持多维数组,即数组的元素也是数组:

var matrix [2][3]int
matrix[0][0] = 1

7. 数组与切片的区别

  • 大小:数组大小固定,切片大小可变。
  • 存储:数组存储在栈中,切片存储在堆中。
  • 功能:切片提供了更丰富的功能,如追加、缩容等。

结论

数组在Go语言中提供了基础的序列数据存储方式,适用于需要固定大小、性能敏感的场景。理解数组的使用和限制,对于Go语言的编程至关重要。在需要动态变化的序列数据时,考虑使用切片。

文章来自个人专栏
GO笔记
6 文章 | 1 订阅
0条评论
0 / 1000
请输入你的评论
0
0