二维数组

1. 概念

二维组有两索引(索引号都是从0开始),其中一个表示行,一个表示列。从概念上讲,二维数组就像一个具有行和列的表格一样。

2. 定义和创建

定义一个3行2列的数组

int[,] arr = new int[3, 2];

注:在声明或创建数组时,[]内的逗号数目加1即维度数加1

3. 初始化

声明时初始化

int[,] number = new int[3, 2] { { 1, 2 }, { 3, 4 }, { 5, 6 } };

省略数组大小初始化

int[,] number = new int[, ] { { 1, 2 }, { 3, 4 }, { 5, 6 } };

省略new关键字初始化

int[,] number = { { 1, 2 }, { 3, 4 }, { 5, 6 } };

4. 使用数组

获得元素

二维数组元素的引用方式为
数组名[下标表达式1,下标表达式2]

注:下标都是从0开始

获得第一行第2列元素的值

Console.WriteLine(number[0, 1]);

获得多维数组的长度

  • Rank:返回数组的维数
  • GetLength(0):返回数组第一维的长度
  • GetLength(1):返回数组第二维的长度
  • GetUpperBound(0):返回第一维的最大下标值
  • GetUpperBound(1):返回第二维的最大下标值

注:GetUpperBound(0)= GetLength(0)-1

            Console.WriteLine("数组的维数:"+arr.Rank);
            Console.WriteLine("第1维数组的长度" + arr.GetLength(0));
            Console.WriteLine("第1维数组的最大下标" + arr.GetUpperBound(0));

5 遍历二维数组

使用双重for循环

            for (int i = 0; i < arr.GetLength(0); i++)
            {
                for (int j = 0; j < arr.GetLength(1); j++)
                {
                    Console.Write("arr[{0},{1}]={2}\t", i, j, arr[i, j]);
                }
                Console.WriteLine();
            }

使用foreach循环

            foreach (var item in number)
            {
                Console.Write(item + " ");
            }

推荐阅读更多精彩内容