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])
			}
		}
	}
}

全部评论

相关推荐

预计下个星期就能开奖吧,哪位老哥来给个准信
华孝子爱信等:对接人上周说的是这周
点赞 评论 收藏
分享
孤寡孤寡的牛牛很热情:为什么我2本9硕投了很多,都是简历或者挂,难道那个恶心人的测评真的得认真做吗
点赞 评论 收藏
分享
无敌虾孝子:喜欢爸爸还是喜欢妈妈
点赞 评论 收藏
分享
点赞 收藏 评论
分享
牛客网
牛客企业服务