C#数组应用分析第1/2页
C#数组应用分析第1/2页
发布时间:2016-12-28 来源:查字典编辑
摘要:以下内容来自MSDN数组是具有相同数据类型的项的有序集合。要访问数组中的某个项,需要同时使用数组名称及该项与数组起点之间的偏移量。在C#中,...

以下内容来自MSDN

数组是具有相同数据类型的项的有序集合。要访问数组中的某个项,需要同时使用数组名称及该项与数组起点之间的偏移量。在C#中,声明和使用数组的方法与Java有一些重要区别。

一维数组

一维数组以线性方式存储固定数目的项,只需一个索引值即可标识任意一个项。在C#中,数组声明中的方括号必须跟在数据类型后面,且不能放在变量名称之后,而这在Java中是允许的。因此,类型为integers的数组应使用以下语法声明:

int[]arr1;

下面的声明在C#中无效:

//intarr2[];//compileerror

声明数组后,可以使用new关键字设置其大小,这一点与Java相同。下面的代码声明数组引用:

int[]arr;

arr=newint[5];//createa5elementintegerarray

然后,可以使用与Java相同的语法访问一维数组中的元素。C#数组索引也是从零开始的。下面的代码访问上面数组中的最后一个元素:

System.Console.WriteLine(arr[4]);//accessthe5thelement

初始化

C#数组元素可以在创建时使用与Java相同的语法进行初始化:

int[]arr2Lines;

arr2Lines=newint[5]{1,2,3,4,5};

但C#初始值设定项的数目必须与数组大小完全匹配,这与Java不同。可以使用此功能在同一行中声明并初始化C#数组:

int[]arr1Line={1,2,3,4,5};

此语法创建一个数组,其大小等于初始值设定项的数目。

在程序循环中初始化

在C#中初始化数组的另一个方法是使用for循环。下面的循环将数组的每个元素都设置为零:

int[]TaxRates=newint[5];

for(inti=0;i<TaxRates.Length;i++)

{

TaxRates[i]=0;

}

交错数组

C#和Java都支持创建交错(非矩形)数组,即每一行包含的列数不同的数组。例如,在下面的交错数组中,第一行有四项,而第二行有三项:

int[][]jaggedArray=newint[2][];

jaggedArray[0]=newint[4];

jaggedArray[1]=newint[3];

多维数组

可以使用C#创建规则的多维数组,多维数组类似于同类型值的矩阵。虽然Java和C#都支持交错数组,但C#还支持多维数组(数组的数组)。

使用以下语法声明多维矩形数组:

int[,]arr2D;//declarethearrayreference

float[,,,]arr4D;//declarethearrayreference

声明之后,可以按如下方式为数组分配内存:

arr2D=newint[5,4];//allocatespacefor5x4integers

然后,可以使用以下语法访问数组的元素:

arr2D[4,3]=906;

由于数组是从零开始的,因此此行将第四行第五列中的元素设置为906。

初始化

可以使用以下一种方法,在同一个语句中创建、设置并初始化多维数组:

int[,]arr4=newint[2,3]{{1,2,3},{4,5,6}};

int[,]arr5=newint[,]{{1,2,3},{4,5,6}};

int[,]arr6={{1,2,3},{4,5,6}};

当前1/2页12下一页阅读全文

推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
相关阅读
网友关注
最新C#教程学习
热门C#教程学习
编程开发子分类