Go 語(yǔ)言教程
Go 語(yǔ)言支持多維數(shù)組,以下為常用的多維數(shù)組聲明方式:
var variable_name [SIZE1][SIZE2]...[SIZEN] variable_type
以下實(shí)例聲明了三維的整型數(shù)組:
var threedim [5][10][4]int
二維數(shù)組是最簡(jiǎn)單的多維數(shù)組,二維數(shù)組本質(zhì)上是由一維數(shù)組組成的。二維數(shù)組定義方式如下:
var arrayName [ x ][ y ] variable_type
variable_type 為 Go 語(yǔ)言的數(shù)據(jù)類(lèi)型,arrayName 為數(shù)組名,二維數(shù)組可認(rèn)為是一個(gè)表格,x 為行,y 為列,下圖演示了一個(gè)二維數(shù)組 a 為三行四列:
二維數(shù)組中的元素可通過(guò) a[ i ][ j ] 來(lái)訪問(wèn)。
多維數(shù)組可通過(guò)大括號(hào)來(lái)初始值。以下實(shí)例為一個(gè) 3 行 4 列的二維數(shù)組:
a = [3][4]int{ {0, 1, 2, 3} , /* 第一行索引為 0 */ {4, 5, 6, 7} , /* 第二行索引為 1 */ {8, 9, 10, 11}, /* 第三行索引為 2 */ }
注意:以上代碼中倒數(shù)第二行的 } 必須要有逗號(hào),因?yàn)樽詈笠恍械?} 不能單獨(dú)一行,也可以寫(xiě)成這樣:a = [3][4]int{ {0, 1, 2, 3} , /* 第一行索引為 0 */ {4, 5, 6, 7} , /* 第二行索引為 1 */ {8, 9, 10, 11}} /* 第三行索引為 2 */
二維數(shù)組通過(guò)指定坐標(biāo)來(lái)訪問(wèn)。如數(shù)組中的行索引與列索引,例如:
val := a[2][3] 或 var value int = a[2][3]
以上實(shí)例訪問(wèn)了二維數(shù)組 val 第三行的第四個(gè)元素。
二維數(shù)組可以使用循環(huán)嵌套來(lái)輸出元素:
以上實(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其他擴(kuò)展