所以我正在编写一个使用Dictionary
来存储对象的程序。例如
var dictionary:Dictionary=new Dictionary();
var myObject = new myObject(var1, var2, var3);
dicionary["key"]=myObject;
其中var1
,var2
和var3
只是为myObject
中的变量赋值的方法。
我的问题是,我可以访问myObject
中找到的值或函数吗?在myObject
课程中,我有一些吸气剂和二传手。我可以使用getter来获取var1
的值。
dictionary["keys"].getVar1()?
有点儿。
答案 0 :(得分:2)
当然,就像
一样var obj:MyObject = dicionary["key"];
trace( obj.getVar1() );
工作,你可以在没有变量的情况下一行完成。
trace( dicionary["key"].getVar1() );
只要注意类型,如果
,您将收到错误null
因此,在直接访问任何方法之前检查这些内容可能是个好主意。
但是,如果您使用字符串,则通常的Object
是常用解决方案。它作为一个关联数组工作:
var dictObj:Object = [];
dictObj["key"] = myObject;
另一方面,当您需要非字符串对象作为键时,使用Dictionary
。
var dictionary:Dictionary= new Dictionary();
var key:MyKeyObject = new MyKeyObject();
dictionary[key] = myObject;
最后一点:类名通常用CamelCase