Массивы для начинающих

5

Index

Tagged

Attached Files

The following files have been attached to this tutorial:

.jpg

2016_10_Autorretrato Javi_Perfil_bn2_recorte.jpg

Download now 42.82 KB
.png

avatar_dcce1ae2fce5_128.png

Download now 45.52 KB
.png

Reinarte Avatar.png

Download now 26.43 KB
.capx

animals-starter.capx

Download now 173.28 KB
.capx

animals-complete.capx

Download now 174.16 KB
.capx

highscores-example.capx

Download now 182.31 KB

Contributors

Stats

18,089 visits, 29,984 views

Tools

License

This tutorial is licensed under CC BY 4.0. Please refer to the license text if you wish to reuse, share or remix the content contained within this tutorial.

(Это руководство предполагает, что у вас есть знания о том, как работают условия и действия программы. Если нет, см Начинающий Учебник.)

Что из себя представляет массив ?

В принципе, вы можете думать о Массиве в качестве упорядоченного списка элементов; каждая ячейка может содержать Значение (число или текст). Массив Может иметь 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" и выберите массив в отладчике, он будет показывать все данные массива:

Давайте продлжим и заполним оставшуюся часть массива:

Получение значений

Чтобы получить значение из массива можно использовать выражение:

    Array.At(index)

[3] Давайте добавим кнопку и текстовый объект в макете. Когда вы нажимаете кнопку, текст должен быть установлен на первом животного в массиве.

Чтобы сделать это, мы устанавливаем его в animals.At(0):

Если мы знаем значение и хотим, найти его положение в массиве, мы можем использовать выражение:

    Array.IndexOf(value)

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":

  • 3 Comments

  • Order by
Want to leave a comment? Login or Register an account!
  • все ясно понятно навиг такой движок

  • А как можно настроить последовательный ввод? То есть, ввести форму ввода и кнопку "внести в массив", и по нажатию вводит в ось х значения?

  • Спасибо за перевод, помогло в проекте