Как добавить числа в массив через al oop в AS3? - PullRequest
1 голос
/ 01 апреля 2020
var arr: Array = [1, 2, 3, 4, 5, 6, 7, 8, 9];

Я могу добавить эти числа в массив отдельно, как это, но как я могу добавить от 1 до 50 сразу, вместо того, чтобы набирать его полностью?

for (var i:Number=1; i<=50;i++){
var arr:Array(i) = [i];
}

function randomize(a: * , b: * ): int {
    return (Math.random() > .5) ? 1 : -1;
}

trace(arr.sort(randomize));

Я пытаюсь реализовать что-то вроде этого. Спасибо.

1 Ответ

2 голосов
/ 01 апреля 2020

Довольно просто. Вы можете обращаться к элементам Array в квадратных скобках. Работает в обоих направлениях:

// Assign 1 to 10-th element of Array A.
A[10] = 1;

// Output the 10-th element of A.
trace(A[10]);

Более того, вам даже не нужно выделять элементы заранее, Fla sh Player автоматически отрегулирует длину Array :

// Declare the Array variable.
var A:Array;

// Initialize the Array. You cannot work with Array before you initialize it.
A = new Array;

// Assign some random elements.
A[0] = 1;
A[3] = 2;

// This will create the following A = [1, null, null, 2]

Итак, ваш сценарий выглядит примерно так:

// Initialize the Array.
var arr:Array = new Array;

// Iterate from 1 to 50.
for (var i:int = 1; i <= 50; i++)
{
    // Assign i as a value to the i-th element.
    arr[i] = i;
}

Просто имейте в виду, что Array s основаны на 0, так что если вы забудьте об индексе 0, он останется неустановленным (это будет null ).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...