数组是数据集中的一组元素,这些元素按相同的类型分组在一起,并通过公共名称和指定的下标进行访问。
数组是数据集中的一组元素,这些元素按相同的类型分组在一起,并通过公共名称和指定的下标进行访问。
数组是一组相同类型的数据。当访问数组中的数据时,可以用下标来表示。C #中的数组元素可以是任何数据类型。数组下标从0开始,即第一个元素对应的下标为0,然后递增1。数组可以是一维的也可以是多维的。
一维数组是最基本的数组类型,其声明方法如下:
数据类型[]的数组名称;
示例:
int[]an array;//声明一维整数数组
二维数组是二维数组,其声明方法如下:
数据类型[,]的数组名。
示例:
int [,]an array;//声明一个二维整数数组
float [,]a arrayoffloats;//声明浮点二维数组
string [,]anArrayOfStrings;//声明字符串类型的二维数组
声明数组变量时,数组尚未创建,也没有为数组中的元素分配内存空间。因此,声明数组后,需要实例化该数组:
anArray=new int [2,4];
anArrayOfStrings=new stiring[2,4];
我们也可以用给定的值初始化数组元素。
int [,] anArray=new int [2,4] {{1,2,3,4},{5,6,7,8 } };
String [,] anarrayofstrings=new string [2,2] {{'A ',' B'},{ '冠军','亚军' } };
您也可以使用以下快捷键:
int [,] anArray={{0,1,2,3},{1,2,3,4 } };
String [,] anArrayOfStrings={{' A ',' B'},{ '冠军','亚军' } };
在C#语言中,数组为我们提供了一些有用的特性,用它我们可以完成一些更高级的功能。
数组名。Length:返回一个整数,表示数组所有维度中的元素总数。
数组名。Rank:返回表示数组维数的整数。
数组名。GetLength(int dimension):返回一个整数,表示数组的指定维度中的元素数(由参数dimension指定,维度从零开始)。
4.foreach语句对数组或集合中的每个元素循环运行嵌入式语句。
foreach语句的语法格式是:
Foreach(表达式中的数据类型标识符)
嵌入式语句
//6个元素的一维整数数组;
int[]mf1=new int[6];//注意初始化数组的范围,或者指定初始值;
//一维整数数组,包含6个元素,初始值为1,2,3,4,5,6
int[] mf2=new int[6]{1,2,3,4,5,6 };
//一维字符串数组。如果提供了初始值设定项,也可以省略new运算符。
string[] mf3={'c ',' c ',' c# ' };
//一维对象数组
Object[] mf4=new Object[5] { 26,27,28,29,30 };
//二维整数数组,初始值MF5 [0,0]=1,MF5 [0,1]=2,MF5 [1,0]=3,MF5 [1,1]=4
int[,] mf5=new int[,]{{1,2},{3,4 } };
//6*6 2D整数数组
int[,] mf6=new mf[6,6];
我们来看看一维字符串数组的遍历。
使用系统;
公共类麦克风
{
静态void PrintArray(string[] arr)
{
//打印数组元素,arr。长度表示数组元素的数量
for(int I=0;iarr。长度;我)
{
控制台。WriteLine('arr[{0}]={1} ',I,arr[I]);
}
}
公共静态void Main()
{
string[] arr={'c ',' c ',' c# ' };
//将数组作为参数传递
打印数组(arr);
}
}
结果是:arr[0]=c arr[1]=c arr[2]=c#
我们来看一个4行2列(4*2)的整数数组的遍历:
使用系统;
公共类麦克风
{
静态void PrintArray(int[,] arr)
{
//通过两个FOR循环遍历二维数组
for(int I=0;i4;I )//将I初始化为循环变量,I实现该变量的自增量运算。
//在//for循环满足条件后,执行一次循环体,然后执行I,再进入下一个循环。简单的C语法,这里简单介绍一下,供初学者学习。(详情请参考《c# 高级编程4.0》这本书)
{
for(int j=0;J2;j)
{
控制台。WriteLine('arr[{0},{1}]={2} ',I,j,arr[i,j]);//打印每个2D数组元素
}
}
}
公共静态void Main()
{
//主函数
//将数组作为参数传递
PrintArray(new int[,]{{1,2},{3,4},{5,6},{7,8 } };
}
}
Run: arr [0,0]=1arr [0,1]=2arr [1,0]=3arr [1,1]=4arr [2,0]=5arr [2,1]=6arr [3,0]=7arr [3,0]
数组的属性:
阵列可以是一维的、多维的或交错的。
数组元素的默认值设置为零,而引用元素的默认值设置为null。
数组是数组的数组;因此,它的元素是引用类型,并被初始化为null。
数组的索引是从零开始的:有n个元素的数组的索引是从0到n-1。
元素可以是任何类型,包括数组类型。
类型数组是从抽象基类型数组派生的引用类型。因为此类型实现IEnumerable和IEnumerable,所以可以对C#中的所有数组使用foreach迭代。
我对数组的理解:在C#中,数组实际上是对象,而不仅仅是C和C中的可寻址连续内存区域。
一维数组:一维数组以线性方式存储固定数量的项,标识任何项只需要一个索引值。
一维数组实例:
静态类程序
{
静态空干管()
{
//一维数组
int[] arry=new int[9] { 1,2,3,4,5,6,7,8,9 };
arry[0]=2;//第一个行为2
控制台。WriteLine(arry);
}
}
运行结果截图
二维数组实例
//二维数组
int[,] arry2=new int[2,3] { { 1,2,3 },{ 4,5,6 } };
arry2[1,0]=5;//更改第二列的第一个行为5
for(int I=0;我结婚了。GetLength(1);我)
{
for(int y=0;y arry2。GetLength(1);Y )//第一个for循环遍历2D数组的列,第二个for循环遍历2D数组的行。
{
控制台。Write(arry2[i,y]);
}
}
运行结果截图
交叉阵列实例
//交错数组
int[][]arry 3=new int[3][];//交错数组必须指定下标的数量
arry3[0]=new int[] { 0,1,2,4 };
arry3[1]=new int[] { 3,4,5,6 };
arry3[2]=new int[] { 4,8,9 };
for(int x=0;x arry3。长度;x)
{
for(int z=0;z arry3[x]。长度;z)
{
控制台。write(arry 3[x][z]);
}
控制台。WriteLine();//基于inti的数组元素换行。
}
运行结果截图
# C还提供了一个foreach语句。该语句提供了一种简单明了的方法来迭代数组的元素。请参见下面的示例。
静态空干管()
{
int[]arry 4=new int[100];
foreach(数组中的int a)
{
控制台。写(arry);
}
}
运行结果截图
下载源代码地址:ArrayModel(jb51.net)。rar
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。