楼主 xyh9999 |
《字典法学习拾零》 以下用dic代表Dictionary对象。通过Dim dic As Object:Set dic = CreateObject("scripting.dictionary")建立而来。 对dic的主要属性及方法介绍如下: 1.count: 返回字典中条目个数。在建立字典对象时该属性返回0,即在Dim dic As Object:Set dic = CreateObject("scripting.dictionary")后dic.count后回0。 2.item: Item(key) 设定或返回指定的键的条目值。 如果在改变某个 item 时,没有找到 key,则用指定的newitem创建一个新的 key。 对dic.item(newkey)=itemValue进行赋值时不需要检查dic.exists(newkey)的真假,当dic.exists(newkey)为假时会自动增加字典条目,而用“dic.add newkey,itemValue”时必须确保newkey在字典中不存在,即dic.exists(newkey)必须为假时“dic.add newkey,itemValue”才不会出错。 dic.item(newkey)=itemValue可以简写为dic(newkey)=itemValue。 3.items: 是item的值集,可以用a=dic.items将所有item值赋值给a,a就是一个数组,a的下标为0。当dic中存在条目时,UBound(dic.items)及UBound(a)反回的上标数均比dic.count小1。 用for each temp in dic.items可以实现在dic.items内循环。 4.key: Key(key) 设定键值。 可以改变旧的key,比如dic.key("条目1")="条目2",但须考虑 dic.exists("条目2"),"条目2"已存在时会出错。 如果在更改某个key 时,没有找到 key,则会出现运行时错误。 5.keys: 是key的值集,可以用a=dic.keys将所有key值赋值给a,a就是一个数组,a的下标为0。当dic中存在条目时,UBound(dic.keys)及UBound(a)反回的上标数均比dic.count小1。 用for each temp in dic或for each temp in dic.keys可以实现在dic.keys内循环。 6.exists: 返回Key是否存在。如:dic.exists(key) 7.add方法: 用于增加一个字典条目newkey。当dic.exists(newkey)=false时,“dic.add newkey,itemValue”才不会出错。 8.remove方法: 用于删除一个字典条目key。当dic.exists(key)=true时,“dic.remove key”才不会出错。 9.removeall方法 dic.removeall用于删除dic中的所有条目。 10.CompareMode: (仅用于VBScript)设定或返回键的字符串比较模式。 dic.CompareMode[ = compare]进行设置,compare参数如下: ━━━━━━━━━━━━┳━━━┳━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 常数 ┃ 值 ┃ 描述 ━━━━━━━━━━━━╋━━━╋━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ VbUseCompareOption ┃ -1 ┃ 使用 Option Compare 语句的设置值进行比较。 VbBinaryCompare ┃ 0 ┃ 进行二进制比较。 VbTextCompare ┃ 1 ┃ 进行文字比较。 VbDatabaseCompare ┃ 2 ┃ 仅用于 Microsoft Access。进行基于您自己数据库中信息的比较。 ━━━━━━━━━━━━┻━━━┻━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ |
2楼 ljx63426 |
|
3楼 ggsmart |
好东西,谢谢分享 |
4楼 猴子 |
如果有视频讲座就更好了 |
5楼 海绵宝宝 |
就是将msdn中所讲的的DICTIONARY OBJECT 翻译了下 但同样感谢楼主的热心学习贴 |
6楼 andrewyang |
学习了 呵呵 |
7楼 人性殿堂 |
还以为是长篇大论 写得如果精简 真是言简意骇 |
8楼 我的1314 |
好东西,谢谢分享 |
9楼 bluexuemei |
学习! |
10楼 吾股丰登 |
不错 谢谢了 |
11楼 scott090 |
謝謝分享 |