[GO]二维数组的介绍

package main

import "fmt"

func main()  {
    var a [3][4]int
    // 有几个方括号就是几维数据
    // 有几个方括号就需要几重循环
    k := 0
    for i:=0; i<3; i++{
        for j:=0; j<4; j++{
            k++
            a[i][j]=k
            fmt.Printf("a[%d][%d]=%d", i, j, a[i][j])
        }
        fmt.Println("\n")
    }
    fmt.Println("a = ", a)

    b := [3][4]int{{1,2,3,4}, {5,6,7,8}, {9,10,11,12}}
    fmt.Println("b = ", b)

    c := [3][4]int{{1,3,4}, {5,6,8}, {9,10,11,12}} //初始值为0
    fmt.Println("c = ", c)

    d := [3][4]int{{1,2,3,4}, {5,6,7,8}}
    fmt.Println("d = ", d)

    e := [3][4]int{1:{5,6,7,8}} //定义第二组为给定的值,其它的为初始值
    fmt.Println("e = ", e)
}

执行的结果为

a =  [[1 2 3 4] [5 6 7 8] [9 10 11 12]]
b =  [[1 2 3 4] [5 6 7 8] [9 10 11 12]]
c =  [[1 3 4 0] [5 6 8 0] [9 10 11 12]]
d =  [[1 2 3 4] [5 6 7 8] [0 0 0 0]]
e =  [[0 0 0 0] [5 6 7 8] [0 0 0 0]]