数组是包含若干相同类型元素的一组变量。这些变量都可以通过索引进行访问。数组中的变量称为数组的元素。数组能够容纳元素的数量称为数组的长度。数组的维数即数组的秩。数组中的每个元素都具有唯一的索引与其相对应。数组的索引从零开始。
数组类型是从抽象基类型Array派生的引用类型。通过new运算符创建数组并将数组元素初始化为它们的默认值。数组可以分为一维、多维和交错数组。
1、一维数组:
1.1.1声明
type[]arrayName
//type:数组存储数据的数据类型
//arrayName:数组名称
1.1.2初始化
可以通过new运算符创建数组并将数组元素初始化为他们的默认值
int[] arr=new int[5];
//arr数组中的每个元素都初始化为0
可以在声明数组时将其初始化,并且初始化的值为用户自定义的值。
int[] arr=new int[5] {1,2,3,4,5};
1.2.1一维数组的使用
当需要存储多个值时,可以使用一维数组,并通过foreach语句或数组的下标将值读出来
1.2.2一维数组的举例
int[] arr = new int[5];
Console.WriteLine("请输入一组数:");
for (int i = 0; i < 5; i++)
{
arr[i] = Convert.ToInt32(Console.ReadLine());
}
for (int i = 0; i < 5; ++i)
{
int temp = arr[i];
int j = i;
while ((j > 0) && (arr[j - 1] > temp))
{
arr[j] = arr[j - 1];
--j;
}
arr[j] = temp;
}
Console.WriteLine("排序后结果为:");
foreach (int n in arr)
{
Console.WriteLine("{0}", n);
}
Console.Read();
2、二维数组及多维数组
2.1.1声明
type[,] arrayName;
举例:声明一个3行2列的数组
int[,] arr2=new int[3,2];
2.1.2初始化
int[,]arr2=new int[3,2] {{3,2},{3,4},{5,6}};
2.2.1二维数组的使用
将用户输入行值和列值作为二维数组的长度,并将数组行索引和列索引相同的数组元素输出为@,其他输出为*
Console.Write("请输入定义数组的行数:");
int row = Convert.ToInt32(Console.ReadLine());
Console.Write("请输入定义数组的列数:");
int col = Convert.ToInt32(Console.ReadLine());
int[,] arr2 = new int[row, col];
Console.WriteLine("结果是:");
for (int i = 0; i < row; i++)
{
for (int j = 0; j < col; j++)
{
if (i==j)
{
Console.Write("@");
}
else
{
Console.Write("*");
}
}
Console.WriteLine();
}
Console.Read();
3、多维数组
3.1.1声明
type[,(,......)]arrayName
3.1.2初始化
int[, ,] arr3 = new int[2, 1, 3] {{{1,2,3}},{{4,5,6}}};
3.1.3多维数组的使用举例
//声明一个三维数组
int[, ,] arr3;
//初始化该三维数组
arr3 = new int[,,] {{{1,2,3}},{{4,5,6}} };
//使用foreach语句遍历数组并输出
foreach (int i in arr3)
{
Console.WriteLine(i);
}
Console.Read();