创建多维数组及交错数组
开发工具与技术:工具:Visual Studio/c#,技术:C#
作者:刘胜
撰写时间:2019-02-16
一、C#多维数组
C#支持多维数组。多维数组又称为矩形数组。
您可以声明一个int变量的二维数组,如下所示:
int [,] names;
您可以声明一个int变量的三维数组,如下所示:
int [ , , ] names;
二维数组
多维数组最简单的形式是二维数组。一个二维数组,在本质上,是一个一维数组的列表。看下面的程序,我们将使用嵌套循环来处理二维数组:
实例
//实例
#region
static void Main(string[] args)
{
RectMultidmensionalArray();
Console.ReadLine();
}
static void RectMultidmensionalArray()
{
Console.WriteLine("=> Rectangular Multidmensional array.");
// 矩形多维数组
int[,] myMatrix;
myMatrix = new int[6, 6];
// 填充6*6数组
for (int i = 0; i < 6; i++)
for (int j = 0; j < 6; j++)
myMatrix[i, j] = i * j;
// 输出6*6数组
for (int i = 0; i < 6; i++)
{
for (int j = 0; j < 6; j++)
Console.Write(myMatrix[i, j] + "\t");
Console.WriteLine();
}
Console.WriteLine();
}
#endregion
二、C#交错数组
交错数组是数组的数组。您可以声明一个带有int值的交错数组scores,如下所示:
int [][] scores;
声明一个数组不会在内存中创建数组。创建上面的数组:
int[][] scores = new int[5][];
for (int i = 0; i < scores.Length; i++)
{
scores[i] = new int[4];
}
可以初始化一个交错数组,如下所示:
int[][] scores = new int[2][]{new int[]{31,23,77},new int[]{85,77,28,18}};
其中,scores是一个由两个整数数组组成的数组–scores[0]是一个带有3个整数的数组,scores[1]是一个带有4个整数的数组。
实例
下面的实例演示了如何使用交错数组:
static void Main(string[] args)
{
JaggedMultidimensionalArray();
Console.ReadLine();
}
static void JaggedMultidimensionalArray()
{
Console.WriteLine("=> Jagged multidimensional array.");
// 交错多维数组 (也就是数组的数组)
// 声明一个具有5个不同数组的数组
int[][] myJagArray = new int[5][];
// 创建交错数组
for (int i = 0; i < myJagArray.Length; i++)
myJagArray[i] = new int[i + 7];
// 输出每一行(记住,每一个元素都默认为0)
for (int i = 0; i < 5; i++)
{
for (int j = 0; j < myJagArray[i].Length; j++)
Console.Write(myJagArray[i][j] + " ");
Console.WriteLine();
}
}
总结
多维数组的作用不是一维数组可以替代的比如说处理字符串,而且在处理一些有关联的数据,多维数组就可以体现它的优势了。交错数组被认为一个数组的数组,交错数组的每一个矢量都可以有不同的长度。