日期:2021年04月27日
作者:Commas
注释:VB6的集合,有点数组的味道,但是却比数组丰富;有点字典的身影,但是却比字典轻巧……
集合(Collection) 对象
是项目所组成的有序集合,可以把这个集合作为单元来引用。
说明:
1、Collection 对象提供了简便方法,将一组相关的项目(Item)视为单一对象来引用。
2、集合中的项目或成员被这样一个事实联系起来:它们都属于这个集合。
3、集合的成员不一定都是同一种数据类型的。
NO1:先声明,后实例化 一个Collection对象
'1)声明一个集合的变量
Dim clnA As Collection
'2)实例一个集合对象
Set clnA = New Collection
NO2:先声明,后实例化 一个Collection对象
'声明并实例化一个集合对象
Dim clnA As New Collection
属性与方法 | 说明 |
---|---|
Add |
添加一个成员到 Collection 对象 |
Count |
返回 Long(长整数),包含集合中的对象数目。只读 |
Item |
利用位置(Index)或键(Key)返回 Collection 对象的指定成员 |
Remove |
把成员从 Collection 对象中删除。 |
Add
1、语法说明:
object.Add item, [key], [before], [after]
2、参数说明:
参数 | 说明 |
---|---|
item |
必需的,任意类型的表达式,指定要添加到集合中的成员 |
key |
可选的,唯一字符串表达式,指定可以使用的键字符串,代替位置索引来访问集合中的成员,有点字典的身影 |
before |
可选的。表达式(Index 或 Key),指定集合中的相对位置。在集合中将添加的成员放置在 before 参数识别的成员之前 |
after |
可选。表达式(Index 或 Key),指定集合中的相对位置。在集合中将添加的成员放置在 After 参数识别的成员之后 |
注意:
1、集合的Index是从1
开始的,而不是数组的索引从0
开始;
2、before
或after
中的Index必须是介于1
和集合Count
属性值之间的值;
Count
语法说明:
object.Count
Item
1、语法说明:
object.Add item, [key], [before], [after]
2、参数说明:
参数 | 说明 |
---|---|
Index | 必要。为一表达式,指定集合中成员的位置 |
注意:
1、如果Index
是数值表达式,那么index 必须是从 1 到集合 Count 属性值之间的数值;
2、如果Index
是字符串表达式,那么index必须和key参数对应。若key不存在,则会导致错误发生;
Remove
1、语法说明:
object.Add item, [key], [before], [after]
2、参数说明:
参数 | 说明 |
---|---|
Index | 必要。为一表达式,指定集合中成员的位置 |
注意:
1、如果Index
是数值表达式,那么index 必须是从 1 到集合 Count 属性值之间的数值;
2、如果Index
是字符串表达式,那么index必须和key参数对应。若key不存在,则会导致错误发生;
1、代码演示:
Option Explicit
Private Sub Form_Load()
'声明并实例化一个集合对象
Dim clnA As New Collection
'1)Add:添加成员
clnA.Add 1, "intA"
clnA.Add 2, "intB"
clnA.Add 3
clnA.Add "aaa"
clnA.Add "bbb", "sB"
clnA.Add "ccc"
'2)Count:查询集合的对象数目
'Dim lngCount As Long
'lngCount = clnA.Count
Debug.Print clnA.Count
'3)Item:查询某个成员
Debug.Print "clnA(1)=" & clnA(1)
Debug.Print "clnA(sB)=" & clnA("sB")
'4)Remove:移除某个成员
'4-1)Remove Index
clnA.Remove 1
'4-2)Remove Key
clnA.Remove "intB"
clnA.Remove "sB"
End Sub
2、结果输出:
6
clnA(1)=1
clnA(sB)=bbb
1、演示代码:
Option Explicit
Private Sub Form_Load()
'声明并实例化一个集合对象
Dim clnA As New Collection
clnA.Add 1, "intA"
clnA.Add 2, "intB"
clnA.Add 3
clnA.Add "aaa"
clnA.Add "bbb", "sB"
clnA.Add "ccc"
'Index遍历法
Dim i As Long
For i = 1 To clnA.Count
Debug.Print "clnA (" & i & ")=" & clnA(i)
Next i
End Sub
2、结果输出:
clnA (1)=1
clnA (2)=2
clnA (3)=3
clnA (4)=aaa
clnA (5)=bbb
clnA (6)=ccc
1、演示代码:
Option Explicit
Private Sub Form_Load()
'声明并实例化一个集合对象
Dim clnA As New Collection
clnA.Add 1, "intA"
clnA.Add 2, "intB"
clnA.Add 3
clnA.Add "aaa"
clnA.Add "bbb", "sB"
clnA.Add "ccc"
'Key遍历法
Dim vK As Variant
For Each vK In clnA
Debug.Print vK
Next
End Sub
2、结果输出:
1
2
3
aaa
bbb
ccc
版权声明:本文为博主原创文章,如需转载,请给出:
原文链接:https://blog.csdn.net/qq_35844043/article/details/116198240