Go語言提供了數(shù)組類型的數(shù)據(jù)結(jié)構(gòu)。數(shù)組是一組已編號的掠拳、長度固定的數(shù)據(jù)項序列癞揉,具有相同的唯一類型,可以是任意的原始類型溺欧,例如整型喊熟、字符串或自定義類型。
相對于聲明number0姐刁、number1芥牌、...、number99的變量聂使,使用數(shù)組形式numbers[0]壁拉、numbers[1]谬俄、...、numbers[99]更加方便且易于擴展扇商。數(shù)組元素可以通過索引(位置)來讀取或者修改凤瘦,索引從0開始,第一個元素索引為0案铺,第二個索引為1蔬芥,以此類推。
Go語言數(shù)組聲明需要指定元素類型及元素個數(shù)控汉,語法格式如下:
var variable_name [SIZE] variable_type
以上為一維數(shù)組的定義方式笔诵。例如,以下定義了數(shù)組balance長度為10姑子,類型為float32:
var balance [10]float32
數(shù)組可以通過字面量在聲明的同時快速初始化乎婿,例如:
balance := [5]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
如果數(shù)組長度不確定,可以使用...代替數(shù)組的長度街佑,編譯器會根據(jù)元素個數(shù)自行推斷數(shù)組的長度谢翎,例如:
var balance = [...]float32{1000.0, 2.0, 3.4, 7.0, 50.0}
如果設(shè)置了數(shù)組的長度,我們還可以通過指定下標來初始化元素沐旨,例如:
// 將索引為 1 和 3 的元素初始化 balance := [5]float32{1:2.0,3:7.0}
數(shù)組元素可以通過索引(位置)來讀取或者修改森逮,格式為數(shù)組名后加中括號,中括號中為索引的值磁携。例如:
var salary float32 = balance[9]
Go語言支持多維數(shù)組褒侧,最簡單的多維數(shù)組是二維數(shù)組。你可以向函數(shù)傳遞數(shù)組參數(shù)谊迄。