Dictionary 对象
Dictionary 对象用于在结对的名称/值中存储信息((等同于键和项目)。Dictionary 对象看似比数组更为简单,然而,Dictionary 对象却是更令人满意的处理关联数据的解决方案。
比较 Dictionary 和数组:
键用于识别 Dictionary 对象中的项目
无需调用 ReDim 来改变 Dictionary 对象的尺寸
当从 Dictionary 删除一个项目时,其余的项目会自动上移
Dictionary 不是多维,而数组是
Dictionary 与数组相比,有更多的内建对象
Dictionary 在频繁地访问随机元素时,比数组工作得更好
Dictionary 在根据它们的内容定位项目时,比数组工作得更好
Dictionary 对象的属性和方法描述如下:
属性
CompareMode:设置或返回用于在 Dictionary 对象中比较键的比较模式。
Count:返回 Dictionary 对象中键/项目对的数目。
Item:设置或返回 Dictionary 对象中一个项目的值。
Key:为 Dictionary 对象中已有的键值设置新的键值。
方法
Add:向 Dictionary 对象添加新的键/项目对。
Exists:返回一个逻辑值,这个值可指示指定的键是否存在于 Dictionary 对象中。
Items:返回 Dictionary 对象中所有项目的一个数组。
Keys:返回 Dictionary 对象中所有键的一个数组。
Remove:从 Dictionary 对象中删除指定的键/项目对。
RemoveAll:删除 Dictionary 对象中所有的键/项目对。
程序代码
<%
Dim oDic,aItems,aKeys
Set oDic = Server.CreateObject("Scripting.Dictionary")
'添加
oDic.Add "aaa",111
oDic.Add "bbb",222
oDic.Add "ccc",333
oDic.Add "ddd",444
'修改
If oDic.Exists("aaa") Then
oDic.key("aaa") = "eee" 'key属性,只读
oDic.item("eee") = 555 'item属性,可读写
End If
'列表
aKeys = oDic.Keys
aItems = oDic.Items
For i=0 To oDic.Count-1
Response.Write(aKeys(i) & "," & aItems(i))
Next
'删除
Response.Write(oDic.Count)
oDic.Remove("eee") '从 Dictionary 对象中删除键和项目对
Response.Write(oDic.Count)
oDic.RemoveAll() '删除 Dictionary 对象中的所有键和项目对
Response.Write(oDic.Count)
Set oDic = Nothing
%>