Go語言數組詳解
Go 語言提供了數組類型的數據結構。
數組是具有相同唯一類型的一組已編號且長度固定的數據項序列,這種類型可以是任意的原始類型例如整形、字符串或者自定義類型。
相對於去聲明number0, number1, ..., and number99的變量,使用數組形式numbers[0], numbers[1] ..., numbers[99]更加方便且易於擴展。
數組元素可以通過索引(位置)來讀取(或者修改),索引從0開始,第一個元素索引爲 0,第二個索引爲 1,以此類推。
聲明數組
Go 語言數組聲明需要指定元素類型及元素個數,語法格式如下:
var 數組變量名 [元素數量]T
其中:
- 數組變量名:數組聲明及使用時的變量名。
- 元素數量:數組的元素數量。可以是一個表達式,但最終通過編譯期計算的結果必須是整型數值。也就是說,元素數量不能含有到運行時才能確認大小的數值。
- T 可以是任意基本類型,包括 T 爲數組本身。但類型爲數組本身時,可以實現多維數組。
var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"
fmt.Println(team)
輸出結果:
[hammer soldier mum]
代碼說明如下:
- 第 1 行,將 team 聲明爲包含 3 個元素的字符串數組。
- 第 2~4 行,爲 team 的元素賦值。
Go語言數組的初始化
數組可以在聲明時使用初始化列表進行元素設置,參考下面的代碼:
var team = [3]string{"hammer", "soldier", "mum"}
這種方式編寫時,需要保證大括號後面的元素數量與數組的大小一致。但一般情況下,這個過程可以交給編譯器,讓編譯器在編譯時,根據元素個數確定數組大小。
var team = [...]string{"hammer", "soldier", "mum"}
...
表示讓編譯器確定數組大小。上面例子中,編譯器會自動爲這個數組設置元素個數爲 3。
遍歷數組——訪問每一個數組元素
遍歷數組也和遍歷切片類似,看下面代碼:
var team [3]string
team[0] = "hammer"
team[1] = "soldier"
team[2] = "mum"
for k, v := range team {
fmt.Println(k, v)
}
代碼輸出結果:
hammer
soldier
mum
代碼說明如下:
- 第 6 行,使用 for 循環,遍歷 team 數組,遍歷出的鍵 k 爲數組的索引,值 v 爲數組的每個元素值。
- 第 7 行,將每個鍵值打印出來。
視頻和代碼
鏈接:https://pan.baidu.com/s/1tWPVrCZxLyzrUxH8qcvAnQ
提取碼:c6z1