golang-数组基本使用

打印 上一主题 下一主题

主题 892|帖子 892|积分 2676

Go语言中的数组是一个固定长度的元素序列,这些元素都是相同的类型。数组是值类型,这意味着当它们被赋值给新的变量时,会进行一次数组的复制。
创建数组

通过指定元素类型和数组长度来创建数组。数组长度必须是一个常量表达式,由于数组的长度是其类型的一部门。 数组的数量一旦确定就不能更改了,就是说大小不可变
  1. var a [5]int // 声明一个包含5个整数的数组,默认值为0
  2. b := [3]int{1, 2, 3} // 声明并初始化一个包含3个整数的数组
  3. c := [...]int{4, 5, 6} // 使用...让编译器自动计算数组的长度
复制代码
元素类型

数组可以包罗任何类型的元素,包括但不限于整数、浮点数、字符串乃至其他数组。
  1. var d [2]string // 包含2个字符串的数组
  2. var e [3][2]int // 二维数组,包含3个包含2个整数的数组
复制代码
遍历数组

遍历数组通常使用for循环,可以通过索引遍历,也可以使用range关键字遍历。
  1. // 通过索引遍历
  2. for i := 0; i < len(a); i++ {
  3.     fmt.Println(a[i])
  4. }
  5. // 使用range遍历
  6. for index, value := range b {
  7.     fmt.Printf("Index: %d, Value: %d\n", index, value)
  8. }
复制代码
使用range时,它会返回两个值:当前索引和该索引处的元素值。如果只需要元素值,可以使用_作为匿名变量来忽略索引:
  1. for _, value := range b {
  2.     fmt.Println(value)
  3. }
复制代码
二维数组

二维数组在Go中是元素类型为数组的数组。
  1. // 声明并初始化一个二维数组
  2. var f [2][3]int = [2][3]int{{1, 2, 3}, {4, 5, 6}}
  3. // 遍历二维数组
  4. for i := 0; i < len(f); i++ {
  5.     for j := 0; j < len(f[i]); j++ {
  6.         fmt.Printf("Element [%d][%d] = %d\n", i, j, f[i][j])
  7.     }
  8. }
  9. // 使用range遍历二维数组
  10. for i, row := range f {
  11.     for j, value := range row {
  12.         fmt.Printf("Element [%d][%d] = %d\n", i, j, value)
  13.     }
  14. }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

民工心事

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表