第4章数组与类型
数组的概念
数组的基本操作
控件数组
自定义类型
枚举类型
常用算法举例
计算机处理数据,按有序无序分为两类:
无序性数据:与取值有关,和所在位置无关。
如简单的变量a,I ……
有序性数据:不仅与取值有关,且与其所在位置密切
相关。如比赛成绩,和成绩名次有关。
为了解决一些简单变量单独性和无序性的限制,引入了功能更强的数据结构----数组。
如果有很多个同类型数据需要计算机处理,如8000个高考学生总分的排序,用简单变量不方便,就可以用数组表示。
数组的概念
数组的定义
程序设计中,将一组有序、个数有限的数据作为一个整体,用一个统一的名字表示,这些有序数据称为数组。
数组的定义:数组并不是一种数据类型,而是一组相同类型数据的集合。用一个统一的名字(数组名)代表逻辑上相关的一批数据,每个元素用下标变量来区分;下标变量代表元素在数组中的位置。
其表示形式,如: A(0), A(1), A(2), A(3), A(4),....
X(10) N(2,3) M(1,2,3)
数组分类:
VB中的数组,按不同的方式可分为以下几类:
按数组的大小(元素个数)是否可以改变来分为:静态(定长)数组、动态(可变长)数组。
按元素的数据类型可分为:数值型数组、字符串数组、日期型数组、变体数组等。
按数组的维数可分为:一维数组、二维数组、多维数组。
对象数组:菜单对象数组、控件数组。
数组的声明
简单语法格式:
Dim 数组名([下界 To ] 上界) [As 数据类型]
数组名:自己命名的标识符,命名规则与普通变量相同。
下界:指定数组中元素的下标起点;若省略下界默认下界为0。
上界:指定数组中元素的下标终点。
数据类型:[As 数据类型]子句是可选的,用来说明数组的类型;如果缺省,则与变量的声明一样,默认为是变体类型数组。
数组声明语句完成四个任务:
①建立数组名。
②建立数组的数据类型。
③指定数组中元素的数目。
④初始化数组中每个元素的值(数值数组元素为0,字符串数组元素为空字符串,Variant数组元素的值为特别值Empty)。
静态数组和动态数组
1. 静态数组声明
在声明时确定了大小的数组称为静态数组
(1) 一维数组的声明(无隐式声明)
Dim 数组名([下界 To] 上界) [As 数据类型]
或: Dim 数组名[数据类型符] ([下界 To] 上界)
例:Dim a(1 To 10) As Integer ' 声明了a数组有10个元素
与上面声明等价形式: Dim a%(1 to 10)
1是下标的下界
10是下标的上界
数组元数的数据类型
说明:
。
:上界-下界+1。
<下界>, 则下界为0。若希望下标从1开始,可在模块的通用部分使用Option Base语句将默认下界设为1。其格式是:
Option Base 0或1 ' 后面的参数只能取0或1
例如:
Option Base 1 ' 将数组声明中缺省<下界>下标设为1
4.<下界>和<上界>不能使用变量,必须是常量,常量可以是直接常量、符号常量,一般是整型常量。
,则数组的类型为变体类型。
,一维数组在内存中存放的顺序是下标大小的顺序,如图4-1所示:
图4-1 数组中各元素的存储顺序
一维数组元素的引用
数组必须先定义后使用
使用形式: 数组名(下标)
其中:下标可以是整型变量、常量或表达式。
例如: 设有下面的数组B(10) As Integer
则下面的语句都是正确的。
A(1)=A(2)+B(1)+5 ' 取数组元素运算
A(i)=B(i) ' 下标使用变量
B(i+1)=A(i+2) ' 下标使用表达式
引用不能使下标越界。
VB 数组 来自淘豆网www.taodocs.com转载请标明出处.