C# action 返回值_C#编程基础第五章:数组 - 张果

一、什么是数组

数组用于存储若干相同类型的数据。在本章将介绍什么是数组以及数组的使用方法。了解数组之
后,将学习 foreach 循环以及数组的应用。

数组是一种数据结构,包含同一种类型的多个元素。也就是说,数组是用于存储多个相同类型数
据的集合。

假设现在有这样的需求,接收 10 位学生的计算机成绩,最后输出每个学生的成绩以及计算平均
分。按照我们学习过的知识,可以写出如下的代码来存储每个学生的成绩:

int n1,n2,n3,…,n10; //定义10个变量

其实从这句代码中,我们可以看出这样的缺点:所需要的变量太多,如果人数是 100 个,那么这
种写法更加不切实际。我们就需要使用数组来存储这样的同种类型的多个数据。

acc58fe645692d4233c426188c35718e.png

二、一维数组

C#支持一维数组、多维数组等。在实际应用中,一维数组被广泛使用。

962f53d233a7319e4ea811c1a32f572b.png

. 数组的声明

一维数组声明的语法如下:

数据类型就是 int、char、float、double、string 等,代表了整个数组存放的元素的类型。数组

名称由用户自定义,不过跟变量名的取名一样,也要遵循命名规则,如下代码:

char[] chs; //定义了一个字符类型数组chsint[] nums; //定义了一个int类型数组nums

2.2. 数组的初始化

C#中的数组只有定义是不够的,数组必须初始化后才能使用。数组的初始化有几种常见的方式:

(1)指定数组存储的元素序列,语法格式如下:

数据类型 [] 数组名称 ={ 值 1, 值 2, 值 3, …, , 值 n};

(2)指定数组的长度,使用 new 关键字初始化数组,语法格式如下:

数据类型 [] 数组名称 =new 数据类型[ [ 长度 ];

数组的长度,代表数组存储元素的个数,可以是常量或变量,但如果是变量,变量必须先赋值。

在使用数组过程中,下面的写法都是正确的。

int[] a1={1,2,3}; //第一种方式,长度为3(因为初始化了3个值)int[] a2=newint[4]; //第二种方式,长度为4int[] a3=newint[4]{1,3,5,7}; //两种形式的结合,数组长度必须和元素个数匹配int[] a4=newint[]{1,2,3,4,5}; //初始化了元素,长度可以省略

下面列举了一些可能出现的错误写法。

int arr1[]=newint[5]; // []的位置不对int[] arr2=newint[5]{1,2,3}; //数组长度和元素个数不匹配int[] arr3=newstring[5]; //左右的数据类型不一致

. 数组元素的访问

在 C#中,对数组的访问即是对其元素的访问。比如有这样的一个数组:

int[] array={10,20,30,40,50};

我们如何去访问里面的元素呢?在内存中,一维数组的元素是按照顺序来存储的,如图所示:

f5fa4725713a0735b59ca5d948af5a5e.png

每个数组元素在数组中都有一个顺序号,称为 索引或 下标。对数组元素的访问,我们只要知道数

组的名字以及元素在数组中的索引即可。访问数组元素的格式如下:

对于这个 array 数组,array[0]就是第一个数 10,array[1]就是第二个数 20,依次类推,
array[4]就是最后一个数 50。

小贴士:索引的范围是从 0 到“长度-1”之间。索引是不能自定义的。

知道了数组元素的访问方式,我们可以对数组元素进行依次赋值,如下代码:

int[] arr=newint[3];
arr[0]=10;
arr[1]=20;
arr[2]=30;

当然,这种写法进行大量的赋值时,显得较麻烦,不如初始化方便。

三、算法及其实现