C# 数组(Array)


C# 数组(Array)是一种用于存储相同类型元素的数据结构。它们允许您使用单个变量名引用多个变量,因此,它们使代码更加简洁、可读、可维护。

声明一个数组非常简单,只需要指定数组类型和数组名称,如下所示:

int[] myArray;

现在,myArray 是一个 int 类型的数组。

你还可以在声明数组时分配一个固定的大小:

int[] myArray = new int[10];

上面的代码将创建一个大小为 10 的 int 类型数组。您可以在创建数组时初始化它们的元素,如下所示:

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

上面数组的大小将是 5,并且有 5 个元素。这个数组是从值 {1, 2, 3, 4, 5} 中初始化的。您可以使用索引访问数组中的元素,如下所示:

myArray[0] = 100;
Console.WriteLine(myArray[0]); //输出100

在 C# 中,数组的索引是从 0 开始,因此上面的代码将 myArray 数组中的第一个元素修改为 100,并将其输出到控制台窗口。

另外,数组还具有许多有用的特性。例如,您可以使用 Length 属性获取数组的长度:

Console.WriteLine(myArray.Length); //输出数组的长度5

您还可以使用 foreach 循环访问数组中的每个元素,例如:

foreach (int element in myArray)
{
   Console.WriteLine(element);
}

你可以很方便地找到某个元素在数组中的位置,如下所示:

int index = Array.IndexOf(myArray, 3);
Console.WriteLine(index); //输出2

退化数组是一种特殊类型的数组,其中每个元素都是指针。您可以使用数组元素访问运算符 *(星号)来访问这些指针所指向的值。

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

for (int i = 0; i < myArray.Length; i++)
{
    for (int j = 0; j < myArray[i].Length; j++)
    {
         Console.WriteLine(myArray[i][j]);
    }
}

上面的代码将创建一个包含两个子数组的数组,并使用嵌套循环输出它们的每个元素。这将输出数字 1 到 6。

总之,C# 中的数组非常有用,因为它们提供了一种灵活的数据结构,能够存储和访问大量相同类型的元素,并提供了许多有用的特性和方法。