Go语言多维数组创建及遍历

Go语言多维数组创建需要借助make()函数和for ... range循环语句。

Go语言多维数组访问和修改使用索引。

Go语言多维数组遍历常用多重for循环。

以下示例创建一个三维数组并对其进行遍历:

import "fmt"

// 多维数组生成器
func make3D(m, n, p int) [][][]int {
	buf := make([]int, m*n*p)
	threeDimensionalArray := make([][][]int, m)

	for i := range threeDimensionalArray {
		threeDimensionalArray[i] = make([][]int, n)
		for j := range threeDimensionalArray[i] {
			threeDimensionalArray[i][j] = buf[:p]
			buf = buf[p:]
		}
	}
	return threeDimensionalArray
}

func main() {
	var m, n, p = 3, 3, 5
	t := make3D(m, n, p)
	
	// 修改数组
	t[1][1][3] = 1

	fmt.Println(t)
	
	// 遍历数组
	for i := 0; i < len(t); i++ {
		for j := 0; j < len(t[0]); j++ {
			for k := 0; k < len(t[0][0]); k++ {
				fmt.Printf("t[%d][%d][%d] = %v\n", i, j, k, t[i][j][k])
			}
		}
	}
}

全部评论

相关推荐

11-18 09:44
Java
小白也想要offer:简历别放洋屁,搞不还还放错了,当然你投外企除外,以上纯属个人观点
点赞 评论 收藏
分享
评论
点赞
收藏
分享
牛客网
牛客企业服务