C#二维数组和交错数组笔记

//二维数组声明、赋值
            int[,] myArray = /*new int [2,3]*/{ { 0, 1, 2 }, { 3, 4, 5 } };
            //简写:int[,] myArray = { { 0, 1, 2 }, { 3, 4, 5 } };

           //计算机此时做了什么:申请一段内存,2 * 3 * 4 字节的连续内存,2代表有3行,3代表每一行有3个元素

 //二维数组取某个元素的值:
            Console.WriteLine("取某个元素的值:" + myArray[1, 2]);

 //二维数组获取某一行的元素数:
            Console.WriteLine("第0维的长度是: " + myArray.GetLength(0));
            Console.WriteLine("第1维的长度是: " + myArray.GetLength(1));

//对二维数组进行赋值
            for (int i = 0; i < myArray.GetLength(0); i++)
            {
                for (int j = 0; j < myArray.GetLength(1); j++)
                {
                    myArray[i, j] = 5;
                }
            }

 //用循环去遍历二维数组
            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[][] myArray1 = new int[4][];//表示 myArray1 中有4个数组,每个数组的元素数不确定     

             //计算机此时做了什么: 申请四段内存,并不一定连续  

 //交错数组需要按照每一行去申请内存
            myArray1[0] = new int[3] { 0, 3, 5 };
            myArray1[1] = new int[4];
            myArray1[2] = new int[] { 1, 2, 3, 4, 5 };
            myArray1[3] = new int[] { 1, 2, 3, 4, 5, 7, 8, 9 };

  //交错数组取某一个元素的值
            Console.WriteLine("myArray1[0][1] = " + myArray1[0][1]);

 //交错数组 行数 和 每一行(每个数组)长度(有几个元素) 的获取
            Console.WriteLine("行数为" + myArray1.Length);
            Console.WriteLine("第0行有" + myArray1[0].Length);
            Console.WriteLine("第1行有" + myArray1[1].Length);

Guess you like

Origin blog.csdn.net/Erenlui/article/details/121058755