C# 数组

到目前为止,如果我们想在一个变量中存储多个值,不可能将它们全部存储在一个变量中。但是,我们可以声明一个 C# 数组变量,而不是声明那么多单独的变量,它能够存储同一数据类型的多个值。

C# 数组是引用类型的用户定义数据类型。数组可用于在单个变量中按顺序存储同一数据类型的多个值。

以下是使用数组前应记住的基本事项列表。

  • 一旦我们定义了数组,其大小就无法更改,因此它被认为是固定大小的。
  • 一旦我们定义了它,它的值将按顺序存储在内存位置中。
  • 数组的每个元素都会自动初始化为该数据类型的默认值。

例如,

  • 如果它是一个 C# 中的整型数组,其中的所有元素都将初始化为 0。
  • 如果它是布尔类型,所有元素都初始化为 false。
  • 如果它是字符类型,所有元素都将初始化为空字符。
  • 如果它是字符串类型,所有元素都将初始化为 null。

由于数组是引用类型,所以它们将存储在堆内存中。

Pictorial Representation of Array Items

数组通常分为三种类型。

  1. 一维数组。
  2. 多维数组。
  3. 交错数组。

C# 一维数组

这种语言中的一维数组是线性的,可以在单行中存储数据。

数组声明

让我们看看声明的语法

datatype[] ArrayName = new datatype[size];

这里的 new 是一个运算符,它将创建 C# 数组并将其所有元素初始化为其默认值。接下来,size 是它的大小;一旦我们定义了它,该值将是固定的。

例如

int[] Numbers = new int[5]; 其中 5 是 Numbers[] 的长度

在这种情况下,元素将用默认值 0 进行初始化。而 5 是它的大小,一旦我们定义了它,就是固定的。

如果我们想访问或检索单个项目或它们的值,我们必须使用该项目的索引。数组的索引从 0 到 n-1,其中 n 是它的长度。

这里 Numbers[5] 包含从 Numbers[0] 到 Numbers[4] 的元素。

在 C# 中初始化数组

让我们看看在数组中存储值的语法

ArrayName[index] = value;

例如

Numbers[0] = 10;

Numbers[1] = 30;

Numbers[2] = 80;

Numbers[3] = 100;

Numbers[4] = 70;

在这里,默认值 0 被我们初始化元素时所用的值覆盖了。

C# 中数组的内联初始化

情况 1:如果我们有固定的值要存储在其中,那么我们可以如下声明一个数组

例如

Int[] array1 = new int[4] {3, 6, 8, 2};

这里提到的大小是 4。如果我们传递的元素数量少于或多于数组的长度或大小,那么它会给你一个语法错误。

因此,我们需要传递与大小中提到的相同数量的元素。

情况 2:不指定元素的数量或其大小,我们甚至可以使用内联初始化来声明数组。

例如,

Int[] array1 = new int[] {10, 2, 6, 4};

我们在这里没有指定任何大小,所以我们可以传递任意数量的元素。但是,一旦我们传递了,那将是它的大小,并且以后不能更改。

C# 数组示例

以下示例可帮助您理解一维数组的声明、初始化和元素打印。

using System;
 
 class program
 {
     public static void Main()
     {
         int[] array1 = new int[5];
         array1[0] = 10;
         array1[1] = 20;
         array1[2] = 40;
         array1[3] = 60;
         char[] array2 = new char[4] {'a', 'n', 'k', 'o'};
         float[] array3 = new float[] { 2.13F, 5, 9.198F, 10.0F, 12};
         Console.WriteLine("Second element in array1 is {0}", array1[1]);
         Console.WriteLine("Fifth element in array1 is {0}", array1[4]);
         Console.WriteLine("First element in array2 is {0}", array2[0]);
         Console.WriteLine("Third element in array3 is {0}", array3[2]);
         Console.ReadLine();
     }
 }

输出

Declare, Initialize, and access Array Items Example

分析

array1[] 是一个大小为 5 的整型数组

这里,只初始化了 4 个元素。第 5 个元素未初始化。

当我们尝试将第二个和第五个元素打印到 C# 控制台时,

像往常一样,第二个元素是 array1[1] = 20

第五个元素是 array1[4] = 0

array2[] 是 char 类型,有四个元素。

array2[0] 是 array2 中的第一个元素,即 a。

array3[] 是 float 类型,有五个元素。

array3[2] 是 array3 中的第三个元素,即 9.198

分类 C#