Показать сообщение отдельно
Старый 23.04.2011, 20:29
Lesorub вне форума Посмотреть профиль Отправить личное сообщение для Lesorub Найти все сообщения от Lesorub
  № 1  
Lesorub

Регистрация: Apr 2011
Сообщений: 10
По умолчанию Двумерный массив

Заполняю простой массив элементами.
количество элементов любое, в данном случае 555:
Код AS3:
        private var myTestArray:Array = new Array();
		public function Main():void 
		{	
			 fillmyArray(555);	
		}
		private function fillmyArray(a:int):void
		{
			for (var i:int = 0; i<a; i++) 
			{ 
				myTestArray[i] = 1;
			}
		}
В AS3 нет двумерных массивов.
Выхожу из положения вложением одного массива в другой.

Код AS3:
private var myArray:Array = new Array([], [], [], [], []);
		public function Main():void 
		{
                      fillArray(5, 10);		
		}
 
		private function fillArray(n:int,m:int):void 
		{
			for (var i:int = 0; i<n; i++) 
			{ 
				for (var j:int = 0; j < m; j++)
				{
                                    myArray[i][j] = 0;
				}
			}
		}
Большое неудобство в том, что я должен задавать определёное количество"столбцов" в квадратных скобках: new Array([], [], [], [], []);
Если я вызываю функцию fillArray(5, 10); с 4 или меньше вместо 5, проблемм нет.
Если ставлю больше 5 то получаю ошибку.
Причём вместо 10 могу поставить опять таки всё что угодно.

Как избежать такой жёсткой привязки к количеству new Array([], [], [], [], []); ???
Необходимо динамически задавать Любое количество "столбцов".
Заранее спасибо


Последний раз редактировалось udaaff; 23.04.2011 в 20:31.