欢迎来到天天文库
浏览记录
ID:42153815
大小:855.00 KB
页数:91页
时间:2019-09-09
《第07章 数 组》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库。
1、第7章数组7.1声明和创建数组7.2多维数组7.3交错数组7.4foreach语句7.5数组与方法7.6Array类7.7习题7.1声明和创建数组数组是数据类型相同、数目一定的变量的有序集合,组成数组的变量称为该数组的元素。内存分配时,数组对应着一组顺序排放的存储单元,数组中的每个元素按照创建时的次序在其中存放。C#语言中,数组是一种引用类型。使用前需要声明和创建。7.1.1声明数组一维数组的声明形式:数据类型[]数组名例:int[]a;string[]str;数据类型:可以是C#中任意的数据类型[]
2、:表明后面的变量是一个数组类型,必须放在数组名之前数组名:遵循标识符的命名规则7.1.1声明数组(续)数组是一种引用类型。声明数组只是声明了一个用来操作该数组的引用,并不会为数组元素实际分配内存空间。因此,声明数组时,不能指定数组元素个数。例如:int[5]a;//错误intb[];//错误7.1.2创建数组声明数组后,在访问其元素前必须为数组的元素分配相应内存,即创建数组。创建一维数组形式如下:数组名=new数据类型[数组元素个数]指定数组元素个数的表达式的值必须是一个大于或等于0的整数.例:a=n
3、ewint[5];数组的声明和创建可以出现在同一条语句中。int[]a=newint[5];7.1.2创建数组(续)访问数组中的元素:数组名[索引表达式]注意:索引表达式的最大值是数组元素个数减1,如果指定的索引表达式的值大于最大值或小于0,程序运行时,将会引发异常。例7-1创建数组源代码运行例7-1创建数组usingSystem;publicclassCreateArray{publicstaticvoidMain(){int[]a=newint[4];double[]d=newdouble[3];
4、bool[]b=newbool[2];object[]o=newobject[3];Console.Write("int");for(inti=0;i5、(inti=0;i6、前数组中元素的个数。从例7-1中可知,数组的元素一定有初值,默认值与类中字段的值一致。7.1.2创建数组(续)引用类型数组中保存的只是对象引用。在访问这些对象的成员前,必须使用new运算符创建实际的对象。例7-2引用类型数组源代码运行例7-2引用类型数组usingSystem;publicclassA{privateinti;publicA(inta){i=a;}publicintI{get{returni;}}}例7-2引用类型数组(续)publicclassObjectArray{publicst7、aticvoidMain(){A[]a=newA[3];Console.WriteLine("ta.Length={0}",a.Length);for(inti=0;i8、,i,a[i].I);Console.WriteLine();}}7.1.2创建数组(续)由例7-2可知,创建引用类型数组后,可以通过其属性Length查询数组中对象引用的个数。因为这些引用并不一定引用了某个实际对象,因此,Length返回的只是数组中可能存在的实际对象的最大值,而非实际对象个数。如果要判断数组中某个位置的引用是否引用了实际对象,可以通过检查该引用的值是否为null来实现。7.1.2创建数组(续)创建数组时可以给数组元素指定初始值,要求初
5、(inti=0;i6、前数组中元素的个数。从例7-1中可知,数组的元素一定有初值,默认值与类中字段的值一致。7.1.2创建数组(续)引用类型数组中保存的只是对象引用。在访问这些对象的成员前,必须使用new运算符创建实际的对象。例7-2引用类型数组源代码运行例7-2引用类型数组usingSystem;publicclassA{privateinti;publicA(inta){i=a;}publicintI{get{returni;}}}例7-2引用类型数组(续)publicclassObjectArray{publicst7、aticvoidMain(){A[]a=newA[3];Console.WriteLine("ta.Length={0}",a.Length);for(inti=0;i8、,i,a[i].I);Console.WriteLine();}}7.1.2创建数组(续)由例7-2可知,创建引用类型数组后,可以通过其属性Length查询数组中对象引用的个数。因为这些引用并不一定引用了某个实际对象,因此,Length返回的只是数组中可能存在的实际对象的最大值,而非实际对象个数。如果要判断数组中某个位置的引用是否引用了实际对象,可以通过检查该引用的值是否为null来实现。7.1.2创建数组(续)创建数组时可以给数组元素指定初始值,要求初
6、前数组中元素的个数。从例7-1中可知,数组的元素一定有初值,默认值与类中字段的值一致。7.1.2创建数组(续)引用类型数组中保存的只是对象引用。在访问这些对象的成员前,必须使用new运算符创建实际的对象。例7-2引用类型数组源代码运行例7-2引用类型数组usingSystem;publicclassA{privateinti;publicA(inta){i=a;}publicintI{get{returni;}}}例7-2引用类型数组(续)publicclassObjectArray{publicst
7、aticvoidMain(){A[]a=newA[3];Console.WriteLine("ta.Length={0}",a.Length);for(inti=0;i8、,i,a[i].I);Console.WriteLine();}}7.1.2创建数组(续)由例7-2可知,创建引用类型数组后,可以通过其属性Length查询数组中对象引用的个数。因为这些引用并不一定引用了某个实际对象,因此,Length返回的只是数组中可能存在的实际对象的最大值,而非实际对象个数。如果要判断数组中某个位置的引用是否引用了实际对象,可以通过检查该引用的值是否为null来实现。7.1.2创建数组(续)创建数组时可以给数组元素指定初始值,要求初
8、,i,a[i].I);Console.WriteLine();}}7.1.2创建数组(续)由例7-2可知,创建引用类型数组后,可以通过其属性Length查询数组中对象引用的个数。因为这些引用并不一定引用了某个实际对象,因此,Length返回的只是数组中可能存在的实际对象的最大值,而非实际对象个数。如果要判断数组中某个位置的引用是否引用了实际对象,可以通过检查该引用的值是否为null来实现。7.1.2创建数组(续)创建数组时可以给数组元素指定初始值,要求初
此文档下载收益归作者所有