(Это руководство предполагает, что у вас есть знания о том, как работают условия и действия программы. Если нет, см Начинающий Учебник.)
Что из себя представляет массив ?
В принципе, вы можете думать о Массиве в качестве упорядоченного списка элементов; каждая ячейка может содержать Значение (число или текст). Массив Может иметь 3 размера, известные как x, y и z размер, также известный как ширина, высота и глубина.
1-мерные массивы
[Для этого следует - скачать animals_starter.capx файл стартера.]
[1] Давайте создадим список из пяти животных. Щелкните правой кнопкой мыши или дважды щелкните на макете, и вставить новый объект Array. Назовите его "animals".
Теперь выберите массив в окне объектов и давайте посмотрим на его свойства. Размер массива по умолчанию ширина: 10, высота: 1, Глубина: 1. Мы же хотим сохранить в списке 5 животных, так что продолжим и изменим ширину до 5.
По умолчанию все элементы установлены на ноль (0); мы можем себе представить, что массив выглядит следующим образом:
(По умолчанию, все значения установлены в 0.)
Положение ячейки внутри массива называется - индекс. Индексы начинаются с 0, так что первая ячейка в индекс является 0, а последующая клетка ширины - 1, и до 4 в этом примере.
Установка значения
[2] Давайте установим значения в массиве. Добавляем "Система: На старте макета" состоянии и следующим действием, чтобы установить значение первой ячейки в "cat":
Результат:
Пятой ячейки значение для "dog" :
Теперь массив выглядит следующим образом::
Отладчик очень удобен для просмотра данных в массиве. Если вы запустите "Debug Layout" и выберите массив в отладчике, он будет показывать все данные массива:
Давайте продлжим и заполним оставшуюся часть массива:
Получение значений
Чтобы получить значение из массива можно использовать выражение:
[3] Давайте добавим кнопку и текстовый объект в макете. Когда вы нажимаете кнопку, текст должен быть установлен на первом животного в массиве.
Чтобы сделать это, мы устанавливаем его в animals.At(0):
Если мы знаем значение и хотим, найти его положение в массиве, мы можем использовать выражение:
animals.indexOf("dog") Ровно 4. Если бы мы хотели, получить животное, которое находится, перед собакой ,мы могли бы использовать:
animals.At(animals.IndexOf("dog") - 1)
которая будет возвращать "rabbit".
Перебор масива
-
В Массивах есть пара условий, "For each element" и "Compare current value", которые позволяют нам циклично перебирать по кругу ячейки массива и проверять каждое значение. Для цикла по массиву можно использовать выражения:
Array.CurValue - to get the current value (- получить текущее значение)
Array.CurX - to get the current X index (- получить текущий X индекс)
Array.CurY - to get the current Y index (- получить текущее Y индекс)
Array.CurZ - to get the current Z index (- получить текущее Z индекс)
[4] Давайте через массив "animals" и отобразим каждое значение в этом цикле, добавляя animals.CurValue в текстовый объект:
[4.1] Или мы можем перебрать массив и в любом месте , находя слово "cat" заменять его на слово "lion":