Actionscript 3: проверить массив на совпадение - PullRequest
4 голосов
/ 12 января 2010

Если у вас есть массив с шестью числами, скажите:

public var check:Array = new Array[10,12,5,11,9,4];

или

public var check:Array = new Array[10,10,5,11,9,4];

Как вы проверяете совпадение (пары?)

Ответы [ 2 ]

6 голосов
/ 12 января 2010

Array класс имеет indexOf метод :

function indexOf(searchElement:*, fromIndex:int = 0):int

Ищет элемент в массиве, используя строгое равенство (===), и возвращает позицию индекса элемента.

Параметры

  • searchElement:* - элемент для поиска в массиве.
  • fromIndex:int (по умолчанию = 0) - Местоположение в массиве, с которого начинается поиск элемента.

Возвращает

  • int - Начинающаяся с нуля позиция индекса элемента в массиве. Если аргумент searchElement не найден, возвращаемое значение равно -1.
0 голосов
/ 12 января 2010

Понял (я думаю). Использовано следующее:

public var match:Array = [10,12,5,10,9,4];

   checkArray(match);

   private function checkArray(check:Array) {

    var i:int;
    var j:int;

    for (i= 0; i < check.length; i++) {
        for (j= i+1; j < check.length; j++) {
            if (check[i] === check[j]) {
                trace(check[i] + " at " + i + " is a match with "+check[j] + " at " + j);
                }
            }

        }
    }
...