var wt3103001={//需要调用的对象
pass:"520520",
};
var name=wt3103001;
namepass;
就可以了A初识字典
1、英文名字 Dictionary
2、存在于 Scrrundll 文件中
3、需将文件注册到系统中
4、需引用文件的声明方法
41、Dim D As ScriptingDictionary (使用时还需用代码创建)
42、Dim D As New ScriptingDictionary(对象实例化声明,声明后可直接使用)
43、声明时 Scripting 可省略
5、创建法
51、Set D=CreateObject("ScriptingDictionary")
52、Scripting 为 scrrun 文件的工程名称
53、Dictionary 为 Scripting 工程中的一个类模块(功能模块)
6、字典中的两项(条目)
61、Key(Variant类型),在字典中不重复(必需的)
若key是对象则允许有重复
62、Item(Variant类型),key所对应的“备注”信息(必需的)
63、演示代码在字典中新建一条key及对应item都为“”的数据
DAdd "",""
两个“”,缺一不可
若继续再次使用此代码创建将报错误
7、它有4个属性,6个方法
属性:CompareMode ,Count ,Item ,Key
方法:Add ,Exists,Items ,Keys,Remove ,RemoveAll
B字典6方法
1、Add 方法
用法 ObjectAdd(Key,Item)
向 Dictionary 对象中添加关键字项目对
Object 必需的,总是一个Dictionary对象、11
Item 必需的,与被添加的 Key 相关联的 Item、12
Key 必需的,与被添加的 Item 相关联的 Key、13
若添加的key已经存在,则导致一个错误、14
示例代码
DAdd "A" , "Athens"
DAdd "a" , "Activate"
CompareMode 属性(缺省)默认设置为区分大小写,因此不会报错。若设置为不区分大小写,则此句报错
DAdd "A" , "Athens"
此句报错误,因关键字key值 “A”,在这之前已经添加
DAdd Range("A1") , "Abs"
在 A1 单元格中随意输入 A 或 a
因省略了value 在字典中添加关键字时将单元格A1视为对象添加到字典(对象可以重复添加)
若添加上value 则会报错,因为 A 或 a 在之前已经创建
2、Exists 方法
用法 ObjectExists(key)
如果 Dictionary 对象中存在所指定的关键字,则返回True,否则返回False
Object 必需的,总是一个Dictionary对象、21
key 必需的,需要在 Dictionary 中搜索的 Key值、22
示例代码
DebugPrint DExists("A")
返回True,因之前已经添加,因此该关键字 “A” 在字典中存在
DebugPrint DExists("E")
返回False,因之前代码中未添加,因此该关键字 “E”在字典中不存在
DebugPring DExists("a")
将根据 CompareMode 属性中设置的值来返回
3、Keys
用法 ObjectKeys()
返回一个 Variant 类型的一维数组,其中包含了一个 Dictionary 对象中现有的全部 关键字
31、Object 必需的,总是一个 Dictionary 对象
32、如果字典中未添加关键字,则返回一个(0 to -1)的一维数组
示例代码
Arr=DKeys
运行此代码前,请不要往字典中添加任何关键字
Arr=Dkeys
自行使用 Add 往字典中添加少许数据进行测试
Arr=DKeys()
将字典中的 关键字 交给数组 Arr
Range("A1")Resize(,Ubound(Arr)+1)Value=Arr
将Arr中的值写到单元格中,写到一行里
Range("A3")Resize(Ubound(Arr)+1)Value=WorksheetFunctionTranspose(Arr)
将Arr中的值写到一列中,需要进行转置
4、Items
用法与 Keys 相同,这里不在做重复的描述
示例代码中将 Keys 改为 Items 即可
5、Remove
用法 ObjectRemove(Key)
从一个 Dictionary 对象中清除 关键字项目对
51、Object 必需的,总是一个 Dictionary 对象
52、Key 必需的,要从 Dictionary 中删除的 关键字 项目对相关联
53、如果 所指定的 关键字 不存在,将返回一个错误
示例代码
DRemove("A")
从字典中删除关键字是 A 的项目对
DRemove("E")
要删除的关键字 E 在字典中不存在,因此报错误
6、RemoveAll
用法 ObjectRemoveAll()
从一个 Dictionary 对象中清除所有关键字项目对
61、Object 必需的,总是一个 Dictionary 对象
示例代码
DRemoveAll
清除字典 D 中所有的数据,又成了一个新字典了
C字典4属性
1、CompareMode 属性
用法 ObjectCompareMode[=Compare]
设置或者返回在 Dictionary 对象中进行字符串关键字比较时所使用的 比较模式。
Object 必需的,总是一个Dictionary 对象的名称
Compare 可选项,如果提供此项,Compare 就是一个代表比较模式的值。
如果试图对已经包含数据的 Dictionary 对象的比较模式进行更改的话,就会出错
缺省为 二进制比较格式
CompareMethod 枚举说明
11、UseCompareOption
其值为 -1 使用 Option Compare 语句设置值进行比较(Excel中无效)
12、BinaryCompare
其值为 0 ,二进制比较模式
13、TextCompare
其值为 1 ,文本比较模式
14、DatabaseCompare
其值为 2 ,仅用于 MicrosoftAccess,进行基于你自己数据库中信息的比较
15若未引用 scrrundll 文件,在使用枚举时需在前面添加上vb
在VBA中为我们提供了 VbCompareMethod 枚举,其值都是一样的
即使引用了文件,也可使用 vbTextCompare
如:vbTextCompare
在 Add方法中已经有示例了,这里不在做示例
2、Count 属性
用法 Object。Count
返回集合或 Dictionary 对象中条目数。只读
Object 必需的,总是一个 Dictionary 对象
示例代码
DeBugPrint DCount
返回 0 ,说明字典中还没有条目
Dadd "A","abs"
往字典中添加条目
DeBugPrint DCount
刚才建了个,所以返回1
DAdd "V","Vlookup"
往字典中添加条目
DeBugPrint DCount
刚才又建了一个,返回返回 2
3、Key 属性
用法 ObjectKey(Key)=NewKey
31、在 Dictionary 对象中修改一个Key
32、Object 必需的,总是一个 Dictionary 对象的名称
33、Key 必需的,被改变的 Key 值
34、NewKey 必需的,替换所指定的 Key的新值。
35、如果在改变一个Key时没发现该 Key ,将会报错。
示例代码
dadd "A","Abs"
dkey("A")="B"
此时原字典中的关键字 A 被更改为 B
dkey("A")="B"
再次运行此代码,因关键字 A已不存在,报错误。
通俗的理解是,修改 key
4、Item 属性
用法 ObjectItem(Key)[=NewItem]
41、Item为Dictionary的缺省(默认)属性,因此在使用时可以 d(key)=""
42、在一个 Dictionary 对象中设置或返回所指定 key 的 Item。对于集合则根据所指定的key返回一个 item。读/写
43、Object 必需的,总是一个 Dictionary 对象的名字
44、Key 必需的,与被查找或添加的 item 相关联的 key
45、NweItem 可选项,仅适用于 Dictionary 对象,就是与所指定的 Key 相关联的新值
46、如果在改变一个 key 的Item时候没有该 key ,那么将利用所指定的 NewItem 创建一个新的 Key
47、如果在试图返回一个已有项目的时候没有找到 Key ,那么将创建一个新的 Key 且其相关的项目被设置为空
示例代码
DAdd "A","Abs"
在字典中添加一个关键字 A,它对应的 item是 “Abs”
DItem("A")="And" 等同于 D("A")="And"
将字典中关键字为 A 的Item修改为 “And”
Ditem("E")="Excel"
试图修改关键字 E 的item为 Excel,因在字典中并没有该关键字的存在,此句起了 add 的作用
DebugPrint DItem("B")
返回字典中关键字为 B 的Item,因字典中并没有添加这个关键字,因此会将该关键字添加到字典中其对应的 Item 为 ""
根据它的特性,理解为修改指定key的Item,若没有该 key 则根据表达式新建一个,其对应的 Item 将受表达式影响。
我们需要先把json字符串转化为netsfjsonJSONObject对象,java中这样就可以完成json字符串到Map的转换了。
1将数组转换为JSON:String[] arr = {"asd","dfgd","asd","234"};JSONArray jsonarray = JSONArrayfromObject(arr);Systemoutprintln(jsonarray);
2对象转换成JSON:UserInfo user = new UserInfo(1001,"张三");JSONArray jsonArray = JSONArrayfromObject(user);Systemoutprintln( jsonArray );
3把Map转换成json, 要使用jsonObject对象:Map<String, Object> map = new HashMap<String, Object>();mapput("userId", 1001);mapput("userName", "张三");mapput("userSex", "男");JSONObject jsonObject = JSONObjectfromObject(map);Systemoutprintln(jsonObject);
4把List转换成JSON数据:List<UserInfo> list = new ArrayList<UserInfo>();UserInfo user = new UserInfo(1001, "张三");listadd(user);listadd(user);listadd(user);JSONArray jsonArray = JSONArrayfromObject(list);Systemoutprintln(jsonArray);
5
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)