//二维数组声明、赋值
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);