Arrays

优质
小牛编辑
145浏览
2023-12-01

数组存储相同类型的固定大小的顺序元素集合。 数组用于存储数据集合,但将数组视为存储在连续内存位置的相同类型变量的集合通常更有用。

您可以声明一个数组变量(例如数字)并使用数字[0],数字[1]和...,数字[99]来表示单个变量,例如number0,number1,...和number99,而不是声明单个变量。个别变数。 索引访问数组中的特定元素。

所有阵列都包含连续的内存位置。 最低地址对应于第一个元素,最高地址对应于最后一个元素。

C#中的数组

声明数组 (Declaring Arrays)

要在C#中声明数组,可以使用以下语法 -

datatype[] arrayName;

Where,

  • datatype用于指定数组中元素的类型。

  • [ ]指定数组的等级。 rank指定数组的大小。

  • arrayName指定数组的名称。

例如,

double[] balance;

初始化数组

声明数组不会初始化内存中的数组。 初始化数组变量时,可以为数组赋值。

Array是引用类型,因此您需要使用new关键字来创建数组的实例。 例如,

double[] balance = new double[10];

将值分配给数组

您可以使用索引号为单个数组元素赋值,如 -

double[] balance = new double[10];
balance[0] = 4500.0;

您可以在声明时为数组赋值,如图所示 -

double[] balance = { 2340.0, 4523.69, 3421.0};

您还可以创建和初始化数组,如图所示 -

int [] marks = new int[5]  { 99,  98, 92, 97, 95};

你也可以省略数组的大小,如图所示 -

int [] marks = new int[]  { 99,  98, 92, 97, 95};

您可以将数组变量复制到另一个目标数组变量中。 在这种情况下,目标和源都指向相同的内存位置 -

int [] marks = new int[]  { 99,  98, 92, 97, 95};
int[] score = marks;

创建数组时,C#编译器会根据数组类型隐式地将每个数组元素初始化为默认值。 例如,对于int数组,所有元素都初始化为0。

访问数组元素 (Accessing Array Elements)

通过索引数组名称来访问元素。 这是通过将元素的索引放在数组名称后面的方括号中来完成的。 例如,

double salary = balance[9];

以下示例演示了上述概念声明,赋值和访问数组 -

using System;
namespace ArrayApplication {
   class MyArray {
      static void Main(string[] args) {
         int []  n = new int[10]; /* n is an array of 10 integers */
         int i,j;
         /* initialize elements of array n */
         for ( i = 0; i < 10; i++ ) {
            n[ i ] = i + 100;
         }
         /* output each array element's value */
         for (j = 0; j < 10; j++ ) {
            Console.WriteLine("Element[{0}] = {1}", j, n[j]);
         }
         Console.ReadKey();
      }
   }
}

编译并执行上述代码时,会产生以下结果 -

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109

使用foreach循环

在前面的示例中,我们使用for循环来访问每个数组元素。 您还可以使用foreach语句迭代数组。

using System;
namespace ArrayApplication {
   class MyArray {
      static void Main(string[] args) {
         int []  n = new int[10]; /* n is an array of 10 integers */
         /* initialize elements of array n */
         for ( int i = 0; i < 10; i++ ) {
            n[i] = i + 100;
         }
         /* output each array element's value */
         foreach (int j in n ) {
            int i = j-100;
            Console.WriteLine("Element[{0}] = {1}", i, j);
         }
         Console.ReadKey();
      }
   }
}

编译并执行上述代码时,会产生以下结果 -

Element[0] = 100
Element[1] = 101
Element[2] = 102
Element[3] = 103
Element[4] = 104
Element[5] = 105
Element[6] = 106
Element[7] = 107
Element[8] = 108
Element[9] = 109

C#数组

以下几个与数组相关的重要概念对C#程序员来说应该是清楚的 -

Sr.No.概念与描述
1多维数组

C#支持多维数组。 多维数组的最简单形式是二维数组。

2锯齿状阵列

C#支持多维数组,这是数组的数组。

3将数组传递给函数

您可以通过指定不带索引的数组名称来向函数传递指向数组的指针。

4Param数组

这用于将未知数量的参数传递给函数。

5数组类

在System命名空间中定义,它是所有数组的基类,并提供用于处理数组的各种属性和方法。