Go 語言多維數(shù)組

Go 語言數(shù)組Go 語言數(shù)組

var variable_name [SIZE1][SIZE2]...[SIZEN] variable_type

以下實(shí)例聲明了三維的整型數(shù)組:

var threedim [5][10][4]int

二維數(shù)組

二維數(shù)組是最簡單的多維數(shù)組,二維數(shù)組本質(zhì)上是由一維數(shù)組組成的。二維數(shù)組定義方式如下:

var arrayName [ x ][ y ] variable_type

variable_type 為 Go 語言的數(shù)據(jù)類型,arrayName 為數(shù)組名,二維數(shù)組可認(rèn)為是一個表格,x 為行,y 為列,下圖演示了一個二維數(shù)組 a 為三行四列:

二維數(shù)組中的元素可通過 a[ i ][ j ] 來訪問。


初始化二維數(shù)組

多維數(shù)組可通過大括號來初始值。以下實(shí)例為一個 3 行 4 列的二維數(shù)組:

a = [3][4]int{  
 {0, 1, 2, 3} ,   /*  第一行索引為 0 */
 {4, 5, 6, 7} ,   /*  第二行索引為 1 */
 {8, 9, 10, 11}   /*  第三行索引為 2 */
}

訪問二維數(shù)組

二維數(shù)組通過指定坐標(biāo)來訪問。如數(shù)組中的行索引與列索引,例如:

int val = a[2][3]

以上實(shí)例訪問了二維數(shù)組 val 第三行的第四個元素。

二維數(shù)組可以使用循環(huán)嵌套來輸出元素:

package main

import "fmt"

func main() {
   /* 數(shù)組 - 5 行 2 列*/
   var a = [5][2]int{ {0,0}, {1,2}, {2,4}, {3,6},{4,8}}
   var i, j int

   /* 輸出數(shù)組元素 */
   for  i = 0; i < 5; i++ {
      for j = 0; j < 2; j++ {
         fmt.Printf("a[%d][%d] = %d\n", i,j, a[i][j] )
      }
   }
}

以上實(shí)例運(yùn)行輸出結(jié)果為:

a[0][0] = 0
a[0][1] = 0
a[1][0] = 1
a[1][1] = 2
a[2][0] = 2
a[2][1] = 4
a[3][0] = 3
a[3][1] = 6
a[4][0] = 4
a[4][1] = 8

Go 語言數(shù)組Go 語言數(shù)組