C# 多维数组

您所在的位置:网站首页 三维数组 C# 多维数组

C# 多维数组

#C# 多维数组| 来源: 网络整理| 查看: 265

C# FileInfoC# 数组(Array) C# 多维数组

C#支持最多32个维度的多维数组。可以通过在方括号中添加逗号来声明多维数组。例如,[,]声明二维数组,[,,]声明三维数组,[,,,]声明四维数组,等等。所以,在多维数组中,逗号的数目=维数的数目-1。

声明多维数组int[,] arr2d; // 二维数组 int[, ,] arr3d; // 三维数组 int[, , ,] arr4d ; // 四维数组 int[, , , ,] arr5d; // 五维数组二维数组

让我们了解二维数组。下面初始化二维数组。

int[,] arr2d = new int[3,2]{                                  {1, 2},                                  {3, 4},                                  {5, 6}                              }; //或  int[,] arr2d = {                      {1, 2},                      {3, 4},                      {5, 6}                  };

在上面的二维数组示例中,[3,2]定义了行和列的数目。第一列表示行数,第二列定义列数。下图演示了分为行和列的二维数组。

二维数组

二维数组的以下访问值。

int[,] arr2d = new int[3,2]{                                  {1, 2},                                  {3, 4},                                  {5, 6}                              }; arr2d[0, 0]; //返回1 arr2d[0, 1]; //返回2 arr2d[1, 0]; //返回3 arr2d[1, 1]; //返回4 arr2d[2, 0]; //返回5 arr2d[2, 1]; //返回6 //arr2d[3, 0]; //抛出运行时错误,因为没有第四行

在上面的示例中,二维数组的值可以通过行和列的索引号[行索引,列索引]来访问。因此,[0, 0]返回第一行和第一列[1, 1]的值,并返回第二行和第二列的值。

三维数组

现在,让我们了解三维数组。以下声明并初始化三维数组。

int[, ,] arr3d1 = new int[1, 2, 2]{                 { { 1, 2}, { 3, 4} }             }; int[, ,] arr3d2 = new int[2, 2, 2]{                 { {1, 2}, {3, 4} },                 { {5, 6}, {7, 8} }             }; int[, ,] arr3d3 = new int[2, 2, 3]{                 { { 1, 2, 3}, {4, 5, 6} },                 { { 7, 8, 9}, {10, 11, 12} }             }; arr3d2[0, 0, 0]; // 返回1  arr3d2[0, 0, 1]; // 返回2  arr3d2[0, 1, 0]; // 返回3  arr3d2[0, 1, 1]; // 返回4  arr3d2[1, 0, 0]; // 返回5  arr3d2[1, 0, 1]; // 返回6  arr3d2[1, 1, 0]; // 返回7  arr3d2[1, 1, 1]; // 返回8

正如你在上面的实例中看到的,arr3d1的[1,2,2]指定它将包含二维数组[2,2]中的一行。arr3d2指定维数[2,2,2],表示包含二维数组[2,2]的两行。因此,第一列表示内部二维数组的行数。

四维数组

现在,看下面的四维数组。

int[,,,] arr4d1 = new int[1, 1, 2, 2]{                 {                      { { 1, 2}, { 3, 4} }                      }             }; arr4d1[0, 0, 0, 0]; // 返回1 arr4d1[0, 0, 0, 1]; // 返回2 arr4d1[0, 0, 1, 0]; // 返回3 arr4d1[0, 0, 1, 1]; // 返回4 int[,,,] arr4d2 = new int[1, 2, 2, 2]{ { { {1, 2}, {3, 4} }, { {5, 6}, {7, 8} } } }; arr4d2[0, 0, 0, 0]; // 返回1 arr4d2[0, 0, 0, 1]; // 返回2 arr4d2[0, 0, 1, 0]; // 返回3 arr4d2[0, 0, 1, 1]; // 返回4 arr4d2[0, 1, 0, 0]; // 返回5 arr4d2[0, 1, 0, 1]; // 返回6 arr4d2[0, 1, 1, 0]; // 返回7 arr4d2[0, 1, 1, 1]; // 返回8

在上面的示例中,四维数组arr4d1指定[1、1、2、2],这表示它包含三维数组的一行。

以相同的方式,您可以在C#中声明和初始化5维,6维数组以及最多32维数组。

C# FileInfoC# 数组(Array)


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3