本章不打算详细介绍数组,因为第9章将详细论述数组和集合。但本章将介绍编写一维数组的句法。在声明C#中的数组时,要在各个元素的变量类型后面,加上一组方括号(注意数组中的所有元素必须有相同的数据类型)。
提示:
VB用户注意,C#中的数组使用方括号,而不是圆括号。C++用户很熟悉方括号,但应仔细查看这里给出的代码,因为声明数组变量的C#语法与C++语法并不相同。
例如,int表示一个整数,而int[]表示一个整型数组:
int[] integers;
要初始化特定大小的数组,可以使用new关键字,在类型名后面的方括号中给出大小:
// Create a new array of 32 ints
int[] integers = new int[32];
所有的数组都是引用类型,并遵循引用的语义。因此,即使各个元素都是基本的值类型,integers数组也是引用类型。如果以后编写如下代码:
int[] copy = integers;
该代码也只是把变量copy指向同一个数组,而不是创建一个新数组。
要访问数组中的单个元素,可以使用通常的语法,在数组名的后面,把元素的下标放在方括号中。所有的C#数组都使用基于0的下标方式,所以要用下标0引用第一个变量:
integers[0] = 35;
同样,用下标值31引用有32个元素的数组中的最后一个元素:
integers[31] = 432;
C#的数组句法也非常灵活,实际上,C#可以在声明数组时不进行初始化,这样以后就可以在程序中动态地指定其大小。利用这项技术,可以创建一个空引用,以后再使用new关键字把这个引用指向请求动态分配的内存位置:
int[] integers;
integers = new int[32];
可以使用下面的语法查看一个数组包含多少个元素: