Go语言学习、二维数组

之前讲到过的数组,只有一个下标,称之为一维数组,如果有两个下标,称之为二维数组

以此类推,多为数组,就是多个下标。一般日常开发情况下,三维数组以上就用的比较少了

Go语言中二维数组定义和使用

package main

import "fmt"

func main(){
	//一维数组定义
	//var 数组名 [元素个数] 数据类型
	//二维数组
	//var 数组名 [行个数][列个数] 数据类型
	var arr[3][4]int
	// 通过行和列的下标找到具体元素
	arr[1][2] = 3  //赋值操作
	arr[2][1] = 4
	
	fmt.Print(arr)
}

输出结果

[[0 0 0 0] [0 0 3 0] [0 4 0 0]]

可以看到,第二行,第3列的数据为,我们赋值的3,这里注意,数组的下标是从0开始的

下面我们遍历这个二维数组

package main
import "fmt"
func main(){
	//一维数组定义
	//var 数组名 [元素个数] 数据类型
	//二维数组
	//var 数组名 [行个数][列个数] 数据类型
	var arr[3][4]int
	// 通过行和列的下标找到具体元素
	arr[1][2] = 3  //赋值操作
	arr[2][1] = 4
	//fmt.Print(arr)
	for i:=0;i<3;i++{
		for j:=0;j<4;j++{
			fmt.Print(arr[i][j]," ")
		}
		fmt.Println()
	}
}

得到结果

0 0 0 0 
0 0 3 0 
0 4 0 0 

也可以写成如下形式:

	var arr [3][4]int = [3][4]int{{1,2,3,4},{2,3,4,5},{3,4,5,6}}
	for i:=0;i<3;i++{
		for j:=0;j<4;j++{
			fmt.Print(arr[i][j]," ")
		}
		fmt.Println()
	}

得到结果:

1 2 3 4 
2 3 4 5 
3 4 5 6 

由于二维数组是有行与列构成的,所以通过for循环进行初始化,需要循环嵌套。

总结, 有多少个[ ] 就是多少维,有多少个[ ] ,就用多少个循环。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章