C#程序设计第4章数组和集合课件.pptx

上传人(卖家):晟晟文业 文档编号:3622436 上传时间:2022-09-27 格式:PPTX 页数:40 大小:203.49KB
下载 相关 举报
C#程序设计第4章数组和集合课件.pptx_第1页
第1页 / 共40页
C#程序设计第4章数组和集合课件.pptx_第2页
第2页 / 共40页
C#程序设计第4章数组和集合课件.pptx_第3页
第3页 / 共40页
C#程序设计第4章数组和集合课件.pptx_第4页
第4页 / 共40页
C#程序设计第4章数组和集合课件.pptx_第5页
第5页 / 共40页
点击查看更多>>
资源描述

1、4.1 4.1 一维数组一维数组4.2 4.2 二维数组二维数组4.3 Array4.3 Array类类4.4 4.4 交错交错数组数组4.5 ArrayList4.5 ArrayList类类 4.6 List4.6 List类类定义一维数组的语法格式如下:定义一维数组的语法格式如下:数组类型数组类型 数组名数组名;例如,以下定义了例如,以下定义了3个一维数组,即整型数组个一维数组,即整型数组a、双精、双精度数组度数组b和字符串数组和字符串数组c。int a;double b;string c;在定义数组后,在定义数组后,必须对其进行初始化才能使用。必须对其进行初始化才能使用。初始初始化数组有

2、两种方法:化数组有两种方法:动态初始化动态初始化和和静态初始化静态初始化。4.1.1 4.1.1 一维数组的定义一维数组的定义 动态初始化需要动态初始化需要借助借助new运算符运算符,为数组元素分配内存空,为数组元素分配内存空间,间,并为数组元素赋初值,数值类型初始化为并为数组元素赋初值,数值类型初始化为0,布尔类型初,布尔类型初始化为始化为false,字符串类型初始化为,字符串类型初始化为null。动态初始化数组的格式如下:动态初始化数组的格式如下:数组类型数组类型 数组名数组名=new 数据类型数据类型n元素值元素值0,元素值元素值1,元素值元素值n-1;其中,其中,“数组类型数组类型”是

3、数组中数据元素的数据类型,是数组中数据元素的数据类型,n为为“数组长度数组长度”,可以是整型常量或变量可以是整型常量或变量,后面一层大括号里为,后面一层大括号里为初始值部分。初始值部分。4.1.2 4.1.2 一维数组的动态初始化一维数组的动态初始化1.不给定初始值的情况不给定初始值的情况 如果不给出初始值部分,各元素取默认值。例如:如果不给出初始值部分,各元素取默认值。例如:int a=new int10;该数组在内存中各数组元素均取默认值该数组在内存中各数组元素均取默认值0。2.给定初始值的情况给定初始值的情况如果给出初始值部分,各元素取相应的初值,如果给出初始值部分,各元素取相应的初值,

4、而且而且给出的初值个数与给出的初值个数与“数组长度数组长度”相等。相等。此时可以省略此时可以省略“数组长度数组长度”,因为后面的大括号中,因为后面的大括号中已列出了数组中的全部元素。已列出了数组中的全部元素。例如:例如:int a=new int101,2,3,4,5,6,7,8,9,10;或或int a=new int1,2,3,4,5,6,7,8,9,10;在这种情况下,不允许在这种情况下,不允许“数组长度数组长度”为变量,例如:为变量,例如:int n=5;/定义变量定义变量nint myarr=new intn 1,2,3,4,5;/错误错误如果给出如果给出“数组长度数组长度”,则初始

5、值的个数应与,则初始值的个数应与“数组长度数组长度”相等,否相等,否则出错。例如:则出错。例如:int mya=new int2 1,2;/正确正确int mya=new int2 1,2,3;/错误错误int mya=new int2 1;/错误错误 静态初始化数组时,必须与数组定义结合在一起,否静态初始化数组时,必须与数组定义结合在一起,否则会出错。静态初始化数组的格式如下:则会出错。静态初始化数组的格式如下:数据类型数据类型 数组名数组名=元素值元素值0,元素值元素值1,元素值元素值n-1;用这种方法对数组进行初始化时,无需说明数组元素的用这种方法对数组进行初始化时,无需说明数组元素的个

6、数,只需按顺序列出数组中的全部元素即可,系统会自个数,只需按顺序列出数组中的全部元素即可,系统会自动计算并分配数组所需的内存空间。动计算并分配数组所需的内存空间。4.1.3 4.1.3 一维数组的静态初始化一维数组的静态初始化 例如,以下是对整型数组例如,以下是对整型数组myarr的静态初始化:的静态初始化:int myarr=1,2,3,4,5;在这种情况下,在这种情况下,不能将数组定义和静态初始化分开不能将数组定义和静态初始化分开,例如,例如,以下是错误的。以下是错误的。int myarr;myarr=1,2,3,4,5;/错误的数组的静态初始错误的数组的静态初始 访问一维数组中的某个元素

7、:访问一维数组中的某个元素:名称名称下标或索引下标或索引。所有元素下标从所有元素下标从0开始,到数组长度减开始,到数组长度减1为止。例如,以下为止。例如,以下语句输出数组语句输出数组myarr的所有元素值:的所有元素值:for(i=0;i5;i+)Console.Write(0,ai);Console.WriteLine();4.1.4 4.1.4 访问一维数组中的元素访问一维数组中的元素 C#还提供还提供foreach语句。该语句提供一种简单、明了语句。该语句提供一种简单、明了的方法来循环访问数组的元素。例如,以下代码定义一个的方法来循环访问数组的元素。例如,以下代码定义一个名称为名称为my

8、a的数组,并用的数组,并用foreach语句循环访问该数组。语句循环访问该数组。int mya=1,2,3,4,5,6;foreach(int i in mya)System.Console.Write(0,i);Console.WriteLine();输出为:输出为:1 2 3 4 5 6。若有如下语句定义并初始化数组若有如下语句定义并初始化数组ca:int ca=new int101,2,3,4,5,6,7,8,7,9,10;数组数组ca的合法下标为的合法下标为09,如果程序中使用,如果程序中使用ca10或或ca50,则超过了数组规定的下标,因此越界了。,则超过了数组规定的下标,因此越界了

9、。C#系统会系统会提示以下出错信息。提示以下出错信息。未处理的异常未处理的异常:System.IndexOutOfRangeException:索引超出了数组索引超出了数组界限。界限。4.1.5 4.1.5 一组数组的越界一组数组的越界【例例4.1】设计一个控制台应用程序,采用二分查找方法在给设计一个控制台应用程序,采用二分查找方法在给定的有序数组定的有序数组a中查找用户输入的值,并提示相应的查找结果。中查找用户输入的值,并提示相应的查找结果。using System;namespace proj4_1 class Program static void Main(string args)do

10、uble a=new double100,1.2,2.5,3.1,4.0,4.6,6.7,7.6,8.2,9.8;double k;int low=0,high=9,mid;Console.Write(k:);k=double.Parse(Console.ReadLine();while(low k)high=mid-1;else low=mid+1;Console.WriteLine(未找到未找到0,k);定义二维数组的语法格式如下:定义二维数组的语法格式如下:数组类型数组类型,数组名数组名;其中,其中,“数据类型数据类型”为为C#中合法的数据类中合法的数据类型,型,“数组名数组名”为为C#

11、中合法的标识符。中合法的标识符。4.2.1 4.2.1 二维数组的定义二维数组的定义例如,以下语句定义了例如,以下语句定义了3个二维数组,即整型数组个二维数组,即整型数组x、双精、双精度数组度数组y和字符串数组和字符串数组z。int,x;double,y;string,z;对于多维数组,可以作类似的推广,例如,以下语句定对于多维数组,可以作类似的推广,例如,以下语句定义了一个三维数组义了一个三维数组p。int,p;动态初始化二维数组的格式如下:动态初始化二维数组的格式如下:数据类型数据类型,数组名数组名=new 数据类型数据类型mn 元素值元素值0,0,元素值元素值0,1,元素值元素值0,n-

12、1,元素值元素值1,0,元素值元素值1,1,元素值元素值1,n-1,元素值元素值m-1,0,元素值元素值m-1,1,元素值元素值m-1,n-1 ;其中,其中,“数组类型数组类型”是数组中数据元素的数据类型,是数组中数据元素的数据类型,m、n分别为行数和列数,即各维的长度,分别为行数和列数,即各维的长度,可以是整型常量或变量。可以是整型常量或变量。4.2.2 4.2.2 二维数组的动态初始化二维数组的动态初始化1.不给定初始值的情况不给定初始值的情况 如果不给出初始值部分,各元素取默认值。例如:如果不给出初始值部分,各元素取默认值。例如:int,x=new int2,3;该数组各数组元素均取默认

13、值该数组各数组元素均取默认值0。2.给定初始值的给定初始值的情况情况 如果给出初始值部分,各元素取相应的初值,如果给出初始值部分,各元素取相应的初值,而且给出的而且给出的初值个数与对应的初值个数与对应的“数组长度数组长度”相等。相等。此时可以省略此时可以省略“数组数组长度长度”,因为后面的大括号中已列出了数组中的全部元素。,因为后面的大括号中已列出了数组中的全部元素。例如:例如:int,x=new int2,31,2,3,4,5,6;或或 int,x=new int,1,2,3,4,5,6;静态初始化数组时,必须与数组定义结合在一起,否静态初始化数组时,必须与数组定义结合在一起,否则会出错。静

14、态初始化数组的格式如下:则会出错。静态初始化数组的格式如下:数据类型数据类型,数组名数组名=元素值元素值0,0,元素值元素值0,1,元素值元素值0,n-1,元素值元素值1,0,元素值元素值1,1,元素值元素值1,n-1,元素值元素值m-1,0,元素值元素值m-1,1,元素值元素值m-1,n-1;例如,以下语句是对整型数组例如,以下语句是对整型数组myarr的静态初始化。的静态初始化。int,myarr=1,2,3,4,5,6;4.2.3 4.2.3 二维数组的静态初始化二维数组的静态初始化 为了访问二维数组中的某个元素,需指定数组名称和数组为了访问二维数组中的某个元素,需指定数组名称和数组中该

15、元素的行下标和列下标。例如,以下语句输出数组中该元素的行下标和列下标。例如,以下语句输出数组d的所的所有元素值。有元素值。int,d=new int2,31,2,3,4,5,6;int i,j;for(i=0;i2;i+)for(j=0;j3;j+Console.Write(0,di,j);Console.WriteLine();4.2.4 4.2.4 访问二维数组中的元素访问二维数组中的元素 对于多维数组,也可以使用对于多维数组,也可以使用foreach语句来循环语句来循环访问每一个元素,例如访问每一个元素,例如:int,myb=new int3,2 1,2,3,4,5,6;foreach(

16、int i in myb)Console.Write(0,i);Console.WriteLine();其输出为:其输出为:1 2 3 4 5 6。【例例4.2】设计一个控制台应用程序,输出九行杨辉三角形。设计一个控制台应用程序,输出九行杨辉三角形。using System;namespace proj4_2 class Program const int N=10;static void Main(string args)int i,j;int,a=new intN,N;for(i=1;iN;i+)/1列和对角线元素均为列和对角线元素均为1 ai,i=1;ai,1=1;for(i=3;iN;

17、i+)/求第求第3N行的元素值行的元素值 for(j=2;j=i-1;j+)ai,j=ai-1,j-1+ai-1,j;for(i=1;iN;i+)/输出数序输出数序 for(j=1;j=i;j+)Console.Write(0,-2,ai,j);Console.WriteLine();杨辉三角形杨辉三角形 交错数组:元素为数组的数组,交错数组:元素为数组的数组,元素的维度和大小元素的维度和大小可以不同。可以不同。多维数组:元素的维度和大小的均相同。多维数组:元素的维度和大小的均相同。4.4.1 4.4.1 交错数组的定义和初始化交错数组的定义和初始化以下语句定义了一个由以下语句定义了一个由3个

18、元素组成的一维数组,其中每个个元素组成的一维数组,其中每个元素都是一个一维整数数组:元素都是一个一维整数数组:int arrj=new int3;必须初始化必须初始化arrj的元素后才可以使用它。的元素后才可以使用它。可以如下所示初始化可以如下所示初始化该元素:该元素:arrj0=new int5;arrj1=new int4;arrj2=new int2;int b=new intnew int1,2,4,new int2,4,5,new int9,8,0;int c=new int1,2,4,new int2,4,5,new int9,8,0;int d=new int34;(错错)交错数

19、组交错数组a在内存中的存储方式在内存中的存储方式 交错数组元素的访问方式与多维数组类似,通常使用交错数组元素的访问方式与多维数组类似,通常使用Length方法返回包含在交错数组中的数组的数目。方法返回包含在交错数组中的数组的数目。4.4.2 4.4.2 访问交错数组中的元素访问交错数组中的元素 例如,以下程序定义一个交错数组例如,以下程序定义一个交错数组myarr并初始化,最后输出所有并初始化,最后输出所有元素的值。元素的值。int myarr=new int3;myarr0=new int 1,2,3,4,5,6;myarr1=new int 7,8,9,10;myarr2=new int

20、11,12;for(int i=0;i myarr.Length;i+)Console.Write(myarr(0):,i);for(int j=0;j myarri.Length;j+)Console.Write(0,myarrij);Console.WriteLine();程序运行结果如下:程序运行结果如下:myarr(0):1 2 3 4 5 6myarr(1):7 8 9 10myarr(2):11 12属性说明Length 获得一个32位整数,该整数表示Array的所有维数中元素的总数。LongLength 获得一个64位整数,该整数表示Array的所有维数中元素的总数。Rank 获

21、取Array的秩(维数)。方法方法说明说明BinarySearch 静态方法。使用二进制搜索算法在一维的排序静态方法。使用二进制搜索算法在一维的排序Array中搜索值。中搜索值。Copy 静态方法。将一个静态方法。将一个Array的一部分元素复制到另一个的一部分元素复制到另一个Array中,并根据需要中,并根据需要执行类型强制转换和装箱。执行类型强制转换和装箱。CopyTo 非静态方法。将当前一维非静态方法。将当前一维Array的所有元素复制到指定的一维的所有元素复制到指定的一维Array中。中。Find 静态方法。搜索与指定谓词定义的条件匹配的元素,然后返回整个静态方法。搜索与指定谓词定义的

22、条件匹配的元素,然后返回整个Array中中的第一个匹配项。的第一个匹配项。ForEach 静态方法。对指定数组的每个元素执行指定操作。静态方法。对指定数组的每个元素执行指定操作。GetLength 非静态方法。获取一个非静态方法。获取一个32位整数,该整数表示位整数,该整数表示Array的指定维中的元素数。的指定维中的元素数。GetLongLength 非静态方法。获取一个非静态方法。获取一个64位整数,该整数表示位整数,该整数表示Array的指定维中的元素数。的指定维中的元素数。GetLowerBound 非静态方法。获取非静态方法。获取Array中指定维度的下限。中指定维度的下限。GetU

23、pperBound 非静态方法。获取非静态方法。获取Array的指定维度的上限。的指定维度的上限。GetValue 非静态方法。获取当前非静态方法。获取当前Array中指定元素的值。中指定元素的值。IndexOf 静态方法。返回一维静态方法。返回一维Array或部分或部分Array中某个值第一个匹配项的索引。中某个值第一个匹配项的索引。Resize 静态方法。将数组的大小更改为指定的新大小。静态方法。将数组的大小更改为指定的新大小。Reverse 静态方法。反转一维静态方法。反转一维Array或部分或部分Array中元素的顺序。中元素的顺序。SetValue 非静态方法。将当前非静态方法。将当

24、前Array中的指定元素设置为指定值。中的指定元素设置为指定值。Sort 静态方法。对一维静态方法。对一维Array对象中的元素进行排序。对象中的元素进行排序。【例例4.3】设计一个控制台应用程序,产生设计一个控制台应用程序,产生10个个019的随的随机整数,对其递增排序并输出。机整数,对其递增排序并输出。using System;namespace proj4_3 class Program static void Main(string args)int i,k;int myarr=new int10;/定义一个一维数组定义一个一维数组 Random randobj=new Random(

25、);/定义一个随机对象定义一个随机对象 for(i=myarr.GetLowerBound(0);i=myarr.GetUpperBound(0);i+)k=randobj.Next()%20;/返回一个返回一个019的正整数的正整数 myarr.SetValue(k,i);/给数组元素赋值给数组元素赋值 Console.Write(随机数序随机数序:);for(i=myarr.GetLowerBound(0);i=myarr.GetUpperBound(0);i+)Console.Write(0,myarr.GetValue(i);Console.WriteLine();Array.Sort

26、(myarr);/数组排序数组排序 Console.Write(排序数序排序数序:);for(i=myarr.GetLowerBound(0);i=myarr.GetUpperBound(0);i+)Console.Write(0,myarr.GetValue(i);Console.WriteLine();ArrayList类(在命名空间类(在命名空间System.Collections中),用于中),用于建立不定长度的数组,由于该类数组的数据类型为建立不定长度的数组,由于该类数组的数据类型为Object,其长度不固定,可以将其对象看成是一个集合。其长度不固定,可以将其对象看成是一个集合。定义

27、定义ArrayList类的对象的语法格式如下:类的对象的语法格式如下:ArrayList 数组名数组名=new ArrayList();例如,以下语句定义一个例如,以下语句定义一个ArrayList类的对象类的对象myarr,可以,可以将它作为一个数组使用:将它作为一个数组使用:ArrayList myarr=new ArrayList();属性说明 Capacity 获取或设置ArrayList可包含的元素数可包含的元素数。Count 获取ArrayList中实际包含的元素数。实际包含的元素数。Item 获取或设置指定索引处的元素。方法方法说明说明 Add 将对象添加到将对象添加到Array

28、List的结尾处。的结尾处。AddRange 将一个将一个ICollection对象的元素添加到对象的元素添加到ArrayList的末尾。的末尾。BinarySearch 使用二分检索算法在已排序的使用二分检索算法在已排序的ArrayList或它的一部分中查找特定元素。或它的一部分中查找特定元素。Clear 从从ArrayList中移除所有元素。中移除所有元素。Clone 创建创建ArrayList的浅表副本。的浅表副本。Contains 确定某元素是否在确定某元素是否在ArrayList中。中。CopyTo 将将ArrayList或它的一部分复制到一维数组中。或它的一部分复制到一维数组中。G

29、etRange 返回返回 ArrayList,它表示源,它表示源ArrayList中元素的子集。中元素的子集。IndexOf 返回返回ArrayList或它的一部分中某个值的第一个匹配项的从零开始的索引。或它的一部分中某个值的第一个匹配项的从零开始的索引。Insert 将元素插入将元素插入ArrayList的指定索引处。的指定索引处。InsertRange 将集合中的某个元素插入将集合中的某个元素插入ArrayList的指定索引处。的指定索引处。LastIndexOf 返回返回ArrayList或它的一部分中某个值的最后一个匹配项的从零开始的索引。或它的一部分中某个值的最后一个匹配项的从零开始

30、的索引。Remove 从从ArrayList中移除特定对象的第一个匹配项。中移除特定对象的第一个匹配项。RemoveAt 移除移除ArrayList的指定索引处的元素。的指定索引处的元素。RemoveRange 从从ArrayList中移除一定范围的元素。中移除一定范围的元素。Reverse 将将ArrayList或它的一部分中元素的顺序反转。或它的一部分中元素的顺序反转。SetRange 将集合中的元素复制到将集合中的元素复制到ArrayList中一定范围的元素上。中一定范围的元素上。Sort 对对ArrayList或它的一部分中的元素进行排序。或它的一部分中的元素进行排序。ToArray

31、将将ArrayList的元素复制到新数组中。的元素复制到新数组中。ToString 返回表示当前返回表示当前Object的的String。TrimToSize 将容量设置为将容量设置为ArrayList中元素的实际数目。中元素的实际数目。【例例4.4】定义一个定义一个ArrayList对象,用于存放若干个姓名,对对象,用于存放若干个姓名,对其进行排序,并输出排序后的结果。其进行排序,并输出排序后的结果。using System;using System.Collections;/新增新增namespace proj4_4 class Program static void Main(strin

32、g args)ArrayList myarr=new ArrayList();myarr.Add(Smith);myarr.Add(Mary);myarr.Add(Dava);myarr.Add(John);Console.Write(排序前序列排序前序列:);foreach(String sname in myarr)Console.Write(sname+);Console.WriteLine();myarr.Sort();Console.Write(“排序后序列排序后序列:);foreach(String sname in myarr)Console.Write(sname+);Cons

33、ole.WriteLine();List类是类是ArrayList类的类的泛型等效类泛型等效类,该类使用,该类使用大小可按需动态增加的数组实现大小可按需动态增加的数组实现IList泛型接口。泛型接口。定义定义List类的对象的语法格式如下:类的对象的语法格式如下:List 数组名数组名=new List();例如,以下语句定义一个例如,以下语句定义一个List类的对象类的对象myset,其元素类型为其元素类型为string,可以将它作为一个数组使用:,可以将它作为一个数组使用:List myset=new List();属性属性说明说明 Capacity 获取或设置该内部数据结构在不调整大小的

34、情况下能够保获取或设置该内部数据结构在不调整大小的情况下能够保存的元素总数。存的元素总数。Count 获取获取List中实际包含的元素数。中实际包含的元素数。Item 获取或设置指定索引处的元素。获取或设置指定索引处的元素。方法方法说明说明Add将对象添加到将对象添加到List的结尾处。的结尾处。AddRange将指定集合的元素添加到将指定集合的元素添加到List的末尾。的末尾。BinarySearch使用对分检索算法在已排序的使用对分检索算法在已排序的List或它的一部分中查找特定或它的一部分中查找特定元素。元素。Clear从从List中移除所有元素。中移除所有元素。Contains确定某元

35、素是否在确定某元素是否在List中。中。CopyTo将将List或它的一部分复制到一个数组中。或它的一部分复制到一个数组中。Exists确定确定List是否包含与指定谓词所定义的条件相匹配的元素。是否包含与指定谓词所定义的条件相匹配的元素。Find搜索与指定谓词所定义的条件相匹配的元素,并返回整个搜索与指定谓词所定义的条件相匹配的元素,并返回整个List中的第一个匹配元素。中的第一个匹配元素。FindAll检索与指定谓词所定义的条件相匹配的所有元素。检索与指定谓词所定义的条件相匹配的所有元素。FindIndex搜索与指定谓词所定义的条件相匹配的元素,返回搜索与指定谓词所定义的条件相匹配的元素,

36、返回List或它或它的一部分中第一个匹配项的从零开始的索引。的一部分中第一个匹配项的从零开始的索引。FindLast搜索与指定谓词所定义的条件相匹配的元素,并返回整个搜索与指定谓词所定义的条件相匹配的元素,并返回整个List中的最后一个匹配元素。中的最后一个匹配元素。方法方法 说明说明FindLastIndex搜索与指定谓词所定义的条件相匹配的元素,返回搜索与指定谓词所定义的条件相匹配的元素,返回List或它的一部或它的一部分中最后一个匹配项的从零开始的索引。分中最后一个匹配项的从零开始的索引。ForEach对对List的每个元素执行指定操作。的每个元素执行指定操作。IndexOf返回返回Li

37、st或它的一部分中某个值的第一个匹配项的从零开始的索引。或它的一部分中某个值的第一个匹配项的从零开始的索引。Insert将元素插入将元素插入List的指定索引处。的指定索引处。InsertRange将集合中的某个元素插入将集合中的某个元素插入List的指定索引处。的指定索引处。LastIndexOf返回返回List或它的一部分中某个值的最后一个匹配项的从零开始的索或它的一部分中某个值的最后一个匹配项的从零开始的索引。引。Remove从从List中移除特定对象的第一个匹配项。中移除特定对象的第一个匹配项。RemoveAll移除与指定的谓词所定义的条件相匹配的所有元素。移除与指定的谓词所定义的条件

38、相匹配的所有元素。RemoveAt移除移除List的指定索引处的元素。的指定索引处的元素。RemoveRange从从List中移除一定范围的元素。中移除一定范围的元素。Reverse将将List或它的一部分中元素的顺序反转。或它的一部分中元素的顺序反转。Sort对对List或它的一部分中的元素进行排序。或它的一部分中的元素进行排序。ToArray将将List的元素复制到新数组中。的元素复制到新数组中。TrimExcess将容量设置为将容量设置为List中的实际元素数目(如果该数目小于某个阈值)。中的实际元素数目(如果该数目小于某个阈值)。【例例4.5】设计一个控制台应用程序,定义一个设计一个控

39、制台应用程序,定义一个List对象,对象,用于添加若干个学生的学号和姓名,输出后再插入一个学生用于添加若干个学生的学号和姓名,输出后再插入一个学生记录。记录。using System;namespace proj4_5 struct Stud /定义结构类型定义结构类型 public int sno;/学号学号 public string sname;/姓名姓名 ;class Program static void Main(string args)int i;List myset=new List();Stud s1=new Stud();s1.sno=101;s1.sname=李明李明;m

40、yset.Add(s1);Stud s2=new Stud();s2.sno=103;s2.sname=王华王华;myset.Add(s2);Stud s3=new Stud();s3.sno=108;s3.sname=张英张英;myset.Add(s3);Stud s4=new Stud();s4.sno=105;s4.sname=张伟张伟;myset.Add(s4);Console.WriteLine(元素序列元素序列:);Console.WriteLine(下标下标 学号学号 姓名姓名);i=0;foreach(Stud st in myset)Console.WriteLine(0 1

41、 2,i,st.sno,st.sname);i+;Console.WriteLine(容量容量:0,myset.Capacity);Console.WriteLine(元素个数元素个数:0,myset.Count);Console.WriteLine(在索引在索引2处插入一个元素处插入一个元素);Stud s5=new Stud();s4.sno=106;s4.sname=陈兵陈兵;myset.Insert(2,s5);Console.WriteLine(元素序列元素序列:);Console.WriteLine(下标下标 学号学号 姓名姓名);i=0;foreach(Stud st in myset)Console.WriteLine(0 1 2,i,st.sno,st.sname);i+;

展开阅读全文
相关资源
猜你喜欢
相关搜索
资源标签

当前位置:首页 > 办公、行业 > 各类PPT课件(模板)
版权提示 | 免责声明

1,本文(C#程序设计第4章数组和集合课件.pptx)为本站会员(晟晟文业)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!


侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|