Visual Basic .NET程序设计教程 第2版 教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合

上传人:E**** 文档编号:89183377 上传时间:2019-05-20 格式:PPT 页数:25 大小:163.50KB
返回 下载 相关 举报
Visual Basic .NET程序设计教程 第2版  教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合_第1页
第1页 / 共25页
Visual Basic .NET程序设计教程 第2版  教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合_第2页
第2页 / 共25页
Visual Basic .NET程序设计教程 第2版  教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合_第3页
第3页 / 共25页
Visual Basic .NET程序设计教程 第2版  教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合_第4页
第4页 / 共25页
Visual Basic .NET程序设计教程 第2版  教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合_第5页
第5页 / 共25页
点击查看更多>>
资源描述

《Visual Basic .NET程序设计教程 第2版 教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合》由会员分享,可在线阅读,更多相关《Visual Basic .NET程序设计教程 第2版 教学课件 ppt 作者 刘瑞新 第5章 数组、结构与集合(25页珍藏版)》请在金锄头文库上搜索。

1、第5章 数组、结构与集合,本章讲述的主要内容 5.1 数组 5.2 结构和枚举 5.3 集合类,5.1 数组,在现实生活中有着各种各样的数据,这些数据在所讨论的问题中可分为两类:一类是仅与其取值有关,而与其所在的位置无关;更常见的另一类是不仅与其取值有关,并且与其所在的位置也密切相关,如二维表格中的数据与其所在行列坐标有着密切的关系。 前面我们所讲过的变量都是简单变量,利用简单变量可以解决不少问题,但是如果在程序设计中仅使用简单变量,势必受到简单变量单独性和无序性的限制,而难于或无力解决那些数据不仅与取值有关,而且与其所在位置也有关的较复杂的问题,如学生成绩就隐含着名次和成绩。要想方便地解决这

2、些问题,通常需要借助于复杂数据类型即数组。数组是一些具有相同类型的数据按一定顺序组成的序列,数组中的每一个数据都可以通过数组名及唯一索引号(下标)来存取。,5.1 数组,5.1.1 声明和访问数组 1. 一维数组 如果只用一个下标就能确定一个数组元素在数组中的位置,则称该数组为一维数组。也可以说,由具有一个下标的下标变量所组成的数组称为一维数组。声明一维数组的格式为: Dim 数组名(最大索引值) As 数据类型 说明: 1) “数组名”应遵循VB的变量命名规则。 2) “最大索引值”用来指定数组中包含的元素数量。若省略该值,则表示数组的大小不确定。 3) “数据类型”用于指定数组元素的数据类

3、型,如String、Integer等。,5.1 数组,5.1.1 声明和访问数组 2. For Each循环语句 VB专门提供了一种用于依次访问数组所有元素的For Each循环语句,这种依次循环访问方式也称为“遍历”。For Each语句的语法格式为: For Each 变量名 In 数组名称 循环体语句 Next 其中的“变量名”表示一个用于依次存放各数组元素的变量,其类型必须与数组元素的类型一致。在需要遍历所有数组元素时,特别是在数组长度不易确定的环境中,使用这种For EachNext语句就很方便。,5.1 数组,5.1.1 声明和访问数组 3. 多维数组 下标数量大于等于2的数组称为

4、“多维数组”。在多维数组中,比较常用的是二维数组,其数据组织形式与常见的二维表格十分相似。声明二维数组与声明一维数组的语法格式类似,例如: Dim ary1(3, 4) As Integer 声明一个4行5列的数组 声明一个两索引最大值不确定的二维数组 Dim ary2(,) As Integer 声明多维数组时,用逗号表示维数,一个逗号表示二维数组,两个逗号表示三维数组,依次类推。,5.1 数组,5.1.2 Array类 Visual Studio提供的Array类中包含了一些适用于数组常用操作的方法,使用这些方法能完成数组清零、复制、排序、反转等常用操作。Array类的常用方法见表5-2。

5、,5.1 数组,5.1.3 控件数组 1. 声明控件数组 声明控件数组与前面介绍过的声明数组的方法相同,只是将数据类型指定为特定的控件类。声明控件数组的语法格式为: Dim 控件数组名(n) As 控件类型 其中,控件类型为各控件在工具箱中的名称,如Label、Button、TextBox等等;数组名为用户指定的数组名称;n为数组包含的元素个数。 例如,下列代码声明了一个包含4个元素的标签控件数组。 Dim LabelArray(3) As Label,5.1 数组,5.1.3 控件数组 2. 为控件数组赋值 为控件数组赋值的方法与为普通数组赋值的方法类似,可以在声明数组时赋值,也可以在声明后

6、单独赋值。 例如,希望将已添加到窗体中的3个标签控件Label1Label3,组成一个控件数组的代码如下: 声明包含4个元素的控件数组 Dim LabelArray(3) As Label LabelArray(0) = Label1 为各数组元素赋值 LabelArray(1) = Label2 LabelArray(2) = Label3,5.1 数组,5.1.3 控件数组 3. 使用控件数组 控件数组创建并赋值后,可以像对普通数组那样通过循环操作数组元素,这对简化代码编写是十分有意义的。 【演练5-3】,5.2 结构和枚举,5.2.1 结构 结构类型用于处理一组类型不同而内容相关的数据,

7、可以把结构理解成一个包含有若干成员的新的数据类型。结构中的成员可以是使用各类访问修饰符修饰的字段、属性、方法甚至是事件。 1. 定义结构 结构的定义需要使用Structure关键字,其语法格式为: 访问修饰符 Structure 结构名称 访问修饰符 成员1 As 数据类型 访问修饰符 成员2 As 数据类型 访问修饰符 成员n As 数据类型 End Structure,5.2 结构和枚举,5.2.1 结构 2. 声明结构变量 定义结构后,一个新的数据类型就产生了,可以像使用基本数据类型那样,用结构来声明变量。例如: Dim Emp As Employee 声明一个Employee结构类型变

8、量Emp 从上述代码中可以看出,“Employee”如同Integer、String、Char等一样,是一种数据类型,Emp是该类型的一个实例化的对象。只不过前者是用户自定义的数据类型,后者是VB预定义的数据类型。,5.2 结构和枚举,5.2.1 结构 3. 访问结构变量 一般对结构类型对象的访问都要转化为对结构中的成员的访问,由于结构中的成员都依赖于一个结构类型对象,因此使用结构中的成员必须首先声明一个结构类型的对象,这与类的实例化非常相似。访问结构类型变量成员的语法格式为: 结构变量名.成员名 例如: Dim emp As Employee emp.EmployeeName = “zhan

9、gsan “ emp.EmployeeNo = “1101“ Label1.Text = emp.AddSalary(3000, 0.1) 调用结构的方法 Label2.Text = emp.CompanyName 访问结构的属性,5.2 结构和枚举,5.2.1 结构 4. 结构与类的比较 通过前面的介绍,可以看出结构的声明、实例化和使用方法与类都十分相似。在结构中也可以定义字段、属性、方法等成员,也可以使用访问修饰符限制结构成员的可访问范围。通常可以将结构理解成一个简化的类。需要注意的是,结构和类是完全不同的两个概念,它们之间存在着以下几个主要的不同点: 1) 结构是值类型,而类是引用类型。

10、 2) 结构不能实现继承。 3) 结构字段不能有初始值,而类成员可以有初始值。 4) 每个结构都自动带有一个不带参数的隐式的、不可更改的构造函数,该构造函数将结构的所有字段初始化为默认值。而类可以具有多个构造函数,可以将字段初始化成需要的任意值。,5.2 结构和枚举,5.2.2 结构数组应用示例 所谓“结构数组”实际上就是以结构为类型创建的数组。例如,下列语句就以结构Employee为类型创建了一个包含有100个数组元素的Emp结构数组。 Dim Emp(99) As Employee 访问结构数组与访问各种基本类型数组的方法完全相同。例如,下列语句可以将结构数组Emp中第18个元素的Empl

11、oyeeName成员值显示到文本框中。 TextBox1.Text = Emp(17).EmployeeName 【演练5-4】,5.2 结构和枚举,5.2.3 枚举类型 1. 定义枚举类型 定义枚举类型使用关键字Enum,定义枚举类型的一般格式为: Enum 枚举类型名称 As 数值类型 成员1 =整数表达式 成员2 =整数表达式 成员n =整数表达式 End Enum,5.2 结构和枚举,5.2.3 枚举类型 2. 声明与访问枚举变量 声明枚举变量与声明基本类型变量的格式相同,例如: Dim S As SolarSystem 声明一个枚举类型变量S 也可以在声明枚举变量的同时为变量赋值。枚

12、举变量的值,必须是枚举成员,枚举成员需要用枚举类型引导,例如: Dim S As SolarSystem = SolarSystem.Sun为枚举变量S赋值Sun 对枚举变量的访问如同对基本类型变量的访问,例如: 将枚举成员的值赋给整型变量RadiusForSun Dim RadiusForSun As Integer = SolarSystem.Sun,5.3 集合类,5.3.1 ArrayList集合 在相关数据个数确定的情况下,可以采用数组来存储处理这些数据。但在实际应用中,很多时候数据的个数是不能确定的,此时采用数组处理问题就显得有些麻烦了。VB提供的ArrayList集合类,可以在程

13、序运行时动态的改变存储长度,添加或删除元素,故可以将其理解认为一个动态数组。 1. 声明ArrayList对象 VB语言提供了以下3种语法格式来声明ArrayList对象。 1) Dim 对象名 As New ArrayList 2) Dim 对象名 As New ArrayList(长度) 3) Dim 对象名 As New ArrayList(集合对象),5.3 集合类,5.3.1 ArrayList集合 2. 为ArrayList对象赋值 为ArrayList对象赋值时需要使用Add()或Insert()方法。 (1) Add()方法 该方法用于向ArrayList对象的尾部添加一个新元

14、素并赋以指定的值,其语法格式为: ArrayList对象名.Add(值) (2) Insert()方法 该方法用于向ArrayList对象的指定索引处添加一个新元素并赋以指定的值,新元素添加后,后面原有元素的索引值依次后延。Insert方法的语法格式为: ArrayList对象名.Insert(索引值, 元素值),5.3 集合类,5.3.1 ArrayList集合 3. 访问ArrayList对象 访问ArrayList对象元素的方法与访问数组元素的方法相同,同样可以使用For、Do循环或使用For Each语句实现对ArrayList对象元素的遍历。例如: Dim MyList As New

15、 ArrayList(4) MyList.Add(txtName.Text) MyList.Add(txtSex.Text) MyList.Add(txtAge.Text) MyList.Add(txtAddress.Text) Dim Element As String For Each Element In MyList 遍历MyList所有元素 LabelResult.Text = Element & “ “ Next,5.3 集合类,5.3.1 ArrayList集合 4. ArrayList对象的常用属性 ArrayList对象的常用属性见表5-2。,5.3 集合类,5.3.1 Ar

16、rayList集合 5. ArrayList对象的常用方法 除了前面介绍过的Add()和Insert()方法外,ArrayList对象还拥有众多用于实现不同功能的方法,其中较常用的方法有: AddRange、InsertRange、CopyTo、Clear、Remove、RemoveAt、 RemoveRange 、Contains、IndexOf、LastIndexOf、Sort、 Reverse等。,5.3 集合类,5.3.1 ArrayList集合 6. Array类与ArrayList类的主要区别 数组Array类与ArrayList类之间有很多相似的地方,但是区别也很多,主要表现在如下几个方面。 1) ArrayList类相当于一维数组,不支持多下标。 2) Array类中存储的元素类型必须一致,而ArrayList可以存储不同类型的元素。 3) Array类在创建时必须指定大小且是固定的,不能随意更改。而ArrayList创建时可以不指定大小,使用过程中其容量可以根据需要进行扩充。 4) Array类对

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号