26. Go 语言中的数组

AI 概述
1. 数组的声明2. 数组的比较3. 小结 数组是一个可以存放相同数据类型数据的定长序列。由于数组是定长的,在使用场景并不丰富,所以在 Go 语言中通常使用的是切片(Slice)。想要使用切片,就先要了解数组,所以在本文先介绍 Go 语言中数组的使用。 1. 数组的声明 数组的声明形式形如var 数组名 [数组长度...
目录
文章目录隐藏
  1. 1. 数组的声明
  2. 2. 数组的比较
  3. 3. 小结

数组是一个可以存放相同数据类型数据的定长序列。由于数组是定长的,在使用场景并不丰富,所以在 Go 语言中通常使用的是切片(Slice)。想要使用切片,就先要了解数组,所以在本文先介绍 Go 语言中数组的使用。

1. 数组的声明

数组的声明形式形如var 数组名 [数组长度]数组类型,其中数组类型可以是数组本身,也就是数组类型的数组,这样就构成了多维数组。和变量的声明相同,数组在声明时会初始化变量类型的零值

代码示例:

package main

import (
    "fmt"
)

func main() {
    var a [2]int
    var b [2][2]int
    var c = [2]int{1, 2}
    var d = [...]int{3, 4}
    fmt.Println("a 的零值", a)
    fmt.Println("b 的零值", b)
    fmt.Println("c 的值", c)
    fmt.Println("d 的值", d)
}
  • 第 8 行:声明一个长度为 2 的一维数组。自动初始化为零值
  • 第 9 行:声明一个 2 行 2 列的二维数组。自动初始化为零值
  • 第 10 行:声明并定义一个长度为 2,值为[1,2]的数组;
  • 第 11 行:使用 ... 表示根据数组后值的长度自动初始化长度。因为后面的值是 [3,4] 数组自动初始化长度为 2。

执行结果:

go 数组的声明

2. 数组的比较

在 Go 语言中判断数组是否相等需要比较两个部分。一个是数组的长度是否相等,另一个是数组中存放的值是否顺序和大小完全相同。只要这两个部分相等,则 Go 语言中的两个数组就是相等的。

Tips:Go 语言中只有类型相同的数组才可以互相比较,且数组没有大小的比较,只能比较是否相等。

代码示例:

package main

import (
    "fmt"
)

func main() {
    var a [2]int
    var c = [2]int{1, 2}
    var d = [...]int{1, 2}
    fmt.Println("a == c ? ", a == c)
    fmt.Println("c == d ?", c == d)
}
  • 第 11 行:比较数组 a 和数组 b 是否相等。两个数组长度相同,是存储的值不同,所以不相等;
  • 第 12 行:比较数组 c 和数组 d 是否相等。两个数组长度相同,且存储的值也相通,所以相等。

执行结果:

go 数组的比较

3. 小结

本文主要介绍了 Go 语言中数组的使用,主要讲解了以下几点:

  • 数组声明时就决定了长度,会自动初始化零值;
  • 数组可以使用...来自动初始化数组的长度;
  • 数组比较是否相等时必须是数组长度和值完全相同才会相等。

以上关于26. Go 语言中的数组的文章就介绍到这了,更多相关内容请搜索码云笔记以前的文章或继续浏览下面的相关文章,希望大家以后多多支持码云笔记。

「点点赞赏,手留余香」

0

给作者打赏,鼓励TA抓紧创作!

微信微信 支付宝支付宝

还没有人赞赏,快来当第一个赞赏的人吧!

声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 admin@mybj123.com 进行投诉反馈,一经查实,立即处理!
重要:如软件存在付费、会员、充值等,均属软件开发者或所属公司行为,与本站无关,网友需自行判断
码云笔记 » 26. Go 语言中的数组

发表回复