go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 数组:二维数组
Posted Locutus
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 数组:二维数组相关的知识,希望对你有一定的参考价值。
go语言支持多维数组,最简单的多维数组是二维数组。以下为常用的多维数组声明方式:array_name为数组名,variable_type为Go语言的数据类型。
var array_name [SIZE1][SIZE2]...[SIZEN] variable_type
示例:三维的整型数组
var three_dim [5][10][4]int
二维数组简介
二维数组是最简单的多维数组,二维数组本质上是由一维数组组成。二维数组定义方式如下:
var array_name [x][y]variable_type
声明与初始化二维数组
- 声明并初始化数组元素为指定值
c := [2][2]int{{1, 2}, {3, 4}}
多维数组可通过大括号来初始化。以下为初始化一个3行4列的二维数组:
var a = [3][4] int {
{0, 1, 2, 3} , // 第一行索引为 0
{4, 5, 6, 7} , // 第二行索引为 1
{8, 9, 10, 11}, // 第三行索引为 2
}
注意:以上代码中倒数第二行的}必须要有逗号,因为最后一行的 } 不能单独一行,也可以写成这样:
var a = [3][4] int {
{0, 1, 2, 3}, // 第一行索引为 0
{4, 5, 6, 7}, // 第二行索引为 1
{8, 9, 10, 11}} // 第三行索引为 2
访问(读写)二维数组
二维数组中的元素可通过a[i][j]来访问。如数组中的行索引与列索引:
val := a[2][3]
或
var value int = a[2][3]
以上实例,访问了二维数组val第三行的第四列元素。二维数组可以使用for循环嵌套来访问每一个数组元素。
package array_test
import (
"testing"
)
func TestDim(t *testing.T) {
// 数组,5行2列
var a = [5][2]int{{0, 0}, {1, 2}, {2, 4}, {3, 6}, {4, 8}}
var i, j int
// 输出数组元素
for i = 0; i < 5; i++ {
for j = 0; j < 2; j++ {
t.Logf("a[%d][%d] = %d\\n", i, j, a[i][j])
}
}
}
以上是关于go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 数组:二维数组的主要内容,如果未能解决你的问题,请参考以下文章
go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 数组:一维数组
go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 切片:切片内部结构
go语言学习笔记 — 基础 — 高级数据类型 — 数据容器 — 数组:向函数传递数组
go语言学习笔记 — 基础 — 高级数据类型 — 派生类型:指针(pointer)数据容器函数(func)结构体(struct)通道(channel)