系列文章:
總目錄索引:九析帶你輕鬆完爆 go 系列教程
目錄
1 前言
2 一維數組
2.1 一維數組聲明
2.2 一維數組初始化
2.2.1 全量初始化
2.2.2 長度推測初始化
2.2.3 指定索引初始化
2.3 一維數組遍歷
2.3.1 索引遍歷數組
2.3.2 range 遍歷數組
3 二維數組
3.1 二維數組聲明
3.2 二維數組初始化
3.3 二維數組遍歷
3.3.1 索引遍歷
3.3.2 range 遍歷
1 前言
如果你對博客有任何疑問或者想更深入學習 go,請加微信羣,我們一起進步:
2 一維數組
2.1 一維數組聲明
一維數組聲明是三段式:
var arr_name [arr_length] arr_type
樣例代碼如下:
var arr [2]int
2.2 一維數組初始化
2.2.1 全量初始化
全量初始化含義是在初始化數組時明確指定數組長度。樣例代碼如下:
package main
import "fmt"
func main() {
var arr [3]int
arr = [3]int{1, 2, 3}
fmt.Println(arr)
}
一維數組同時聲明和初始化,樣例代碼如下:
package main
import "fmt"
func main() {
arr := [3]int{1, 2, 3}
fmt.Println(arr)
}
2.2.2 長度推測初始化
當數組元素很多的情況下,可以使用 ... 來表示初始化數組的長度。樣例代碼如下:
package main
import "fmt"
func main() {
arr := [...]int{1, 3, 5, 7, 9, 10}
fmt.Println(arr)
}
2.2.3 指定索引初始化
有時我們需要爲特定索引的數組元素賦值,其他未指定索引的數組元素保持默認值。語法爲 index: value。樣例代碼如下:
package main
import "fmt"
func main() {
arr := [5]int{0: 8, 4: 6}
fmt.Println(arr)
}
輸出結果爲:
8
0
0
0
6
2.3 一維數組遍歷
2.3.1 索引遍歷數組
package main
import "fmt"
func main() {
arr := [5]int{1, 3, 5, 7, 9}
for i := 0; i < 5; i++ {
fmt.Println(arr[i])
}
}
2.3.2 range 遍歷數組
package main
import "fmt"
func main() {
arr := [5]int{1, 3, 5, 7, 9}
for _, v := range arr {
fmt.Println(v)
}
}
3 二維數組
3.1 二維數組聲明
二維數組聲明關鍵點在於 var 關鍵字的使用和數組維度聲明。樣例代碼如下:
package main
import "fmt"
func main() {
var arr [2][2]int
fmt.Println(arr)
}
執行結果:
[[0, 0], [0, 0]]
3.2 二維數組初始化
package main
import "fmt"
func main() {
var arr [2][2]int = [2][2]int{[2]int{1, 2}, [2]int{3, 4}}
fmt.Println(arr)
}
也可以直接數組聲明的時候同時進行初始化,樣例代碼如下:
package main
import "fmt"
func main() {
arr := [2][2]int{[2]int{1, 2}, [2]int{3, 4}}
fmt.Println(arr)
}
3.3 二維數組遍歷
3.3.1 索引遍歷
package main
import "fmt"
func main() {
arr := [2][2]int{[2]int{1, 2}, [2]int{3, 4}}
for i := 0; i < 2; i++ {
for j := 0; j < 2; j++ {
fmt.Println(arr[i][j])
}
}
}
3.3.2 range 遍歷
package main
import "fmt"
func main() {
arr := [2][2]int{[2]int{1, 2}, [2]int{3, 4}}
for i := range arr {
for j := range arr[i] {
fmt.Println(arr[i][j])
}
}
}