Go by Example: Arrays

来自泡泡学习笔记
BrainBs讨论 | 贡献2024年3月5日 (二) 09:13的版本 (创建页面,内容为“ 在Go语言中,数组是一个具有特定长度的编号元素序列。在典型的Go代码中,切片更为常见;数组在某些特殊场景下非常有用。 这里我们创建一个数组a,它将恰好包含5个int类型的元素。元素的类型和长度都是数组类型的一部分。默认情况下,数组的值为0(对于int类型,表示0)。 我们可以使用array[index] = value语法设置索引处的值,并使用array[index]获…”)
(差异) ←上一版本 | 最后版本 (差异) | 下一版本→ (差异)
跳到导航 跳到搜索

在Go语言中,数组是一个具有特定长度的编号元素序列。在典型的Go代码中,切片更为常见;数组在某些特殊场景下非常有用。

这里我们创建一个数组a,它将恰好包含5个int类型的元素。元素的类型和长度都是数组类型的一部分。默认情况下,数组的值为0(对于int类型,表示0)。

我们可以使用array[index] = value语法设置索引处的值,并使用array[index]获取值。

内置函数len返回数组的长度。

数组类型是一维的,但你可以组合类型来构建多维数据结构。

请注意,当使用fmt.Println打印时,数组以[v1 v2 v3 …]的形式出现。

package main

import "fmt"

func main() {

    var a [5]int
    fmt.Println("emp:", a)

    a[4] = 100
    fmt.Println("set:", a)
    fmt.Println("get:", a[4])

    fmt.Println("len:", len(a))

    b := [5]int{1, 2, 3, 4, 5}
    fmt.Println("dcl:", b)

    var twoD [2][3]int
    for i := 0; i < 2; i++ {
        for j := 0; j < 3; j++ {
            twoD[i][j] = i + j
        }
    }
    fmt.Println("2d: ", twoD)
}


$ go run arrays.go
emp: [0 0 0 0 0]
set: [0 0 0 0 100]
get: 100
len: 5
dcl: [1 2 3 4 5]
2d:  [[0 1 2] [1 2 3]]