系列文章:
总目录索引:九析带你轻松完爆 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])
}
}
}
有疑问加站长微信联系(非本文作者)