C#二维数组与多维数组的具体使用
在 C# 语言中,数组是一种重要的数据类型,能够存储多个同类型的元素。二维数组和多维数组具有相似的用法,但有着不同的实现方式和适用场景。
二维数组
二维数组的定义
在 C# 中,定义一个二维数组需要指定它的行数和列数。下面是一个定义了一个 3 行 4 列的整型数组的例子:
int[,] myArray = new int[3, 4];
二维数组的初始化
二维数组的初始化可以通过对元素进行赋值的方式进行。二维数组的元素是通过指定数组的行和列来访问的。例如,给二维数组的第一行第一列元素赋值为 1:
myArray[0, 0] = 1;
或者使用初始化表达式的方式初始化数组:
int[,] arr = new int[3, 3]{
{1, 2, 3},
{4, 5, 6},
{7, 8, 9}
};
该表达式定义了一个 3 行 3 列的二维数组,初始化元素为 1~9。
二维数组的遍历
遍历二维数组需要使用嵌套的 for 循环。外层循环控制行数,内层循环控制列数,例如:
for (int i = 0; i < myArray.GetLength(0); i++)
{
for (int j = 0; j < myArray.GetLength(1); j++)
{
Console.WriteLine("myArray[{0},{1}]={2}", i, j, myArray[i, j]);
}
}
这段代码将遍历整个数组并输出每个元素的值。
二维数组的示例说明
以下是一个使用二维数组模拟九宫格的示例:
int[,] matrix = new int[3,3]; // 定义一个 3*3 的数组
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
matrix[i,j] = i*3+j+1; // 初始化每个元素的值
}
}
for(int i=0; i<3; i++)
{
for(int j=0; j<3; j++)
{
Console.Write("{0}\t", matrix[i,j]); // 输出每个元素的值
}
Console.WriteLine();
}
该示例定义了一个 3 行 3 列的二维数组,模拟了一个九宫格,并输出了每个元素的值。
多维数组
与二维数组不同,多维数组的各个维度的大小可以不同。在 C# 中,可以定义任意维数的数组。
多维数组的定义
定义一个三维的数组,代码如下:
int[,,] myArray = new int[2, 3, 4];
在这个示例中,我们定义了一个三维数组,它有 2 个宽度,3 个深度,和 4 个高度。
多维数组的初始化
多维数组的初始化方式跟二维数组基本相同。可以使用嵌套的初始化表达式进行初始化:
int[,,] arr = new int[2, 3, 2] {
{
{1, 2},
{3, 4},
{5, 6}
},
{
{7, 8},
{9, 10},
{11, 12}
}
};
这段代码定义了一个三维数组,包含 2 个深度,3 个行和 2 个列。我们可以通过下面的代码片段来依次输出每个元素的值:
for (int i = 0; i < arr.GetLength(0); i++)
{
for (int j = 0; j < arr.GetLength(1); j++)
{
for (int k = 0; k < arr.GetLength(2); k++)
{
Console.WriteLine("arr[{0},{1},{2}]={3}", i, j, k, arr[i, j, k]);
}
}
}
多维数组的示例说明
以下是一个使用多维数组存储三维坐标的示例:
int[,,] points = new int[2,3,3];
points[0,0,0] = 0;
points[0,0,1] = 0;
points[0,0,2] = 0;
points[0,1,0] = 0;
points[0,1,1] = 0;
points[0,1,2] = 1;
points[0,2,0] = 0;
points[0,2,1] = 0;
points[0,2,2] = 2;
points[1,0,0] = 0;
points[1,0,1] = 1;
points[1,0,2] = 0;
points[1,1,0] = 0;
points[1,1,1] = 1;
points[1,1,2] = 1;
points[1,2,0] = 0;
points[1,2,1] = 1;
points[1,2,2] = 2;
该示例定义了一个三维数组,存储了两个三维点的坐标(每个三维点有三个坐标值)。第一维表示第几个点,第二维表示第几个坐标,第三维表示坐标的值。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:C#二维数组与多维数组的具体使用 - Python技术站