VB Collection 对象的一些操作,该怎么解决
VB Collection 对象的一些操作最近在写程序,在对Collection对象进行操作时遇到个小问题。问题整理后是这样
VB Collection 对象的一些操作
最近在写程序,在对Collection对象进行操作时遇到个小问题。
问题整理后是这样的:
Dim coll As New Collection
coll.Add 1, "60001"
coll.Item("60001") = 4
MsgBox coll.Item("60001")
这个代码的话,执行到coll.Item("60001") = 4这句的时候一直不行,虽然可以通过Remove之后Add来解决,但是
搞不清楚,为什么这样不行啊?
[解决办法]
[解决办法]用数组的方式吧:集合相当于链表,查找元素时从集合的头一个开始,顺序向下,访问m_coData(99)要比访问_colData(1)慢得多
此时系统会自动生成Add,Remove,Item属性和Count方法。
通过定义:Public m_colData As New Collection1 ‘用于保存记录
调用Collecton1类中的Add方法,即可生成数据结构。
3、集合与数组的比较
集合和数组都可用下标来调用,但它们之间存在着区别和联系。
(1)相同点。它们都是数据元素的有序集,数组可以看作为限制了数据元素个数的集合。
(2)不同点。①元素的个数不同。数组的大小由创建时决定;集合的大小在创建时并不确定。
②访问元素的效率不同:。集合相当于链表,查找元素时从集合的头一个开始,顺序向下,访问m_coData(99)要比访问_colData(1)慢得多;而数组元素在内存中是顺序存放的,访问m_coData(99)和访问m_coData(1)的时间是一样的。
结束语
集合是面向对象编程的一个很重要的特点,对于多个具有相同特征的对象可以用集合对象来处理,从而提高编程效率和界面的统一