C#高级编程(第10版) C# 6 & .NET Core 1.0 (.NET开发经典名著)
上QQ阅读APP看书,第一时间看更新

7.3 多维数组

一般数组(也称为一维数组)用一个整数来索引。多维数组用两个或多个整数来索引。

图7-3是二维数组的数学表示法,该数组有3行3列。第1行的值是1、2和3,第3行的值是7、8和9。

在C#中声明这个二维数组,需要在方括号中加上一个逗号。数组在初始化时应指定每一维的大小(也称为阶)。接着,就可以使用两个整数作为索引器来访问数组中的元素:

图7-3

        int[, ] twodim = new int[3, 3];
        twodim[0, 0] = 1;
        twodim[0, 1] = 2;
        twodim[0, 2] = 3;
        twodim[1, 0] = 4;
        twodim[1, 1] = 5;
        twodim[1, 2] = 6;
        twodim[2, 0] = 7;
        twodim[2, 1] = 8;
        twodim[2, 2] = 9;

注意:声明数组后,就不能修改其阶数了。

如果事先知道元素的值,就可以使用数组索引器来初始化二维数组。在初始化数组时,使用一个外层的花括号,每一行用包含在外层花括号中的内层花括号来初始化。

        int[, ] twodim = {
                          {1, 2, 3},
                          {4, 5, 6},
                          {7, 8, 9}
                        };

注意:使用数组初始化器时,必须初始化数组的每个元素,不能遗漏任何元素。

在花括号中使用两个逗号,就可以声明一个三维数组:

        int[, , ] threedim = {
                  { { 1, 2 }, { 3, 4 } },
                  { { 5, 6 }, { 7, 8 } },
                  { { 9, 10 }, { 11, 12 } }
                  };
        WriteLine(threedim[0, 1, 1]);