Конечно, так же, как работает
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