2015-11-10 2 views
0

На многих языках вы можете указать, что массив имеет определенный тип. Например, в Java можно написать:Можно ли указать тип массива в AS3?

String[] arrayOfStrings; 

Однако в ActionScript 3, кажется, что вы можете только указать, что объект типа Array, например:

var myArray:Array; 

Есть ли способ указать, какой тип объекта будет содержать массив AS3?

+0

Если AS3 похож на PHP, и я думаю, что это нет, то нет фактического конструктора для массива. Это объект, который просто называется массивом. Это означает, что каждый индекс в массиве может быть любым. Таким образом, один массив может удерживать [1, «один»] одновременно. – durbnpoisn

+1

@durbnpoisn Нет, AS3 совсем не такой. ;) Существует тип '' Array', который расширяет 'Object'] (http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/Array.html). Вы правы в том, что 'Array' может хранить любые значения, но также существует тип' 'Vector', который является типизированным массивом. (Http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/ Vector.html). – Aaron

ответ

5

Вы можете использовать Vector.<String> для хранения нескольких объектов данного типа в массиве. Vector является безопасным по типу и выше, чем Array, поэтому почти во всех случаях (когда это зависит от вас) вы должны использовать Vector вместо Array.

Я также рекомендую прочитать this article о различных способах построения вектора. Статья с 2010 года (так много улучшений Flash Player были сделаны с тех пор), но большая часть из них по-прежнему применяется, и вы можете загрузить тестовый источник Jackson для запуска теста производительности текущего игрока.

Смежные вопросы