Dictionary

asp

2009-03-14 11:24

set d=server.createobject("Scripting.dictionary")

郁闷 老是记不主 ~~ 英文啊~~      

属性
dictionary.CompareMode           比较模式    0二进制 1文本 2数据库 默认0
dictionary.count                             数组的数量
dictionary.item(Key)                         返回值
dictionary.key(Key)                         重新设置键名
方法
dictionary.add Key,value             增加
dictionary.exists("Key")               测试
dictionary.remove("Key")            移除
dictionary.removeall()                  移除所
dictionary.items()                          返回一个数值包括所有值
dictionary.keys()                           返回一个数值包括所j键名



---------------------------------------------------------------------------------------------------------
<%

set d=createobject("Scripting.dictionary")
d.add "a",1
d.add "b",1                                                   add 方法增加
d.key("a")="c"                                            更改他是属性
response.write(d.item("c"))                   输出键值
response.write(d.count)                        输出键值数量

d.remove("c")                                            删除
if d.existe("c")=true then
response.write("C存在")
else
response.write("C不存在")
end if

as=d.items()                                   所有值的数组
ks=d.keys()                                    所有键名的数组

d.removeall()                                删除所有
set d=nothing
%>

1)在已经存在某关键字的情况下加入同一“关键字/项”组合。
2)删除不存在的关键字/项的组合。
3)修改已经包含数据的Dictionary对象的CompareMode属性。

<%

str="海尔电脑.T618,联想电脑.GD88,TCL电脑.T720i,长虹电视.6610,TCL电脑.3300,长虹电视.M55,海尔电脑.T68ie,长虹电视.7650,长虹电视.7210,海尔电脑.P802,海尔电脑.T312"
response.Write(str&"<br />")

dim dic
Set dic = server.CreateObject("Scripting.Dictionary")

strArr=split(str,",")

for each strAtt in strArr

    str2Att=split(strAtt,".")

    if dic.Exists(str2Att(0)) then
           dic.Item(str2Att(0))=dic.Item(str2Att(0)) & "," & str2Att(1)   
     else       
           dic.Add str2Att(0),str2Att(1)           
     end if

next

for each strKey in dic.Keys
    response.write "["&strKey&"]"&dic.Item(strKey)&"<br>"
next

%>