编程中有这样一种情形:我们需要存储多个同类型数据。比如,保存 1600 个学生的年龄。是否需要声明 1600 个int类型的变量?过了一年,学生们长了 1 岁,是否需要给每个变量重新赋值?这件事情,想想就怕怕。
好在C#中有一种数组,专门存储一组相同类型的数据。数组的声明和初始化语法如下:
数据类型[ ] 数组名 =new数据类型[长度];
注意:数组名像变量名一样要遵循标识符的命名规则;长度必须是整数
下面我们来比较变量和数组的声明与初始化,右边是在内存中为变量和数组分配空间的示意:
对比变量 x 和数组 y 就会发现,数组 y 中其实包含了 3 个
double
类型的变量,为什么是 3 个?
因为初始化数组时在 [ ] 中声明的长度为 3 。既然都在数组 y 中,所以 3 个变量(应该叫数组元素)的名字都叫 y ,为了区分它们,按照顺序给它们加上索引 [0]、[1]、[2] 。请注意:数组的索引从 0 开始递增。那么,数组 y 中 3 个元素的名字就变成了 y[0]、y[1]、y[2] 。最后再注意一点:数组经过初始化以后,数组元素有默认的初始值,
double类型为 0.0 ,
int类型为 0 ,
char类型为 'a' ,
bool类型为false,
string类型为null。
数组元素的赋值与普通变量相同。下面的示例中,我们声明了一个长度为 3 的string类型数组,逐个赋值,然后打印:
上例中,需要注意的是元素的索引,
数组元素索引从 0 开始递增
,所以长度为 3 的数组,其元素索引为 [0]、[1]、[2] 。
如何知道一个数组的长度呢?数组.Length属性会返回数组的长度(即数组元素的个数)。请看下面的例子: