Содержание:
3. Использование двумерных массивов
1. Создание массива элементов
В данной статье будет описано что такое массивы и как работает массив в системе 1С, также будет подробно рассказано именно о двумерных массивах и об использовании двумерных массивов на примерах.
В системе 1С, как и в других платформах по программированию, есть такое понятие, как массив. Массив – это некоторая простейшая коллекция из значений, которая является простейшей единицей.
То есть, массив является набором некоторых элементов, которые имеют определённый порядок и стоят один за другим, доступ к каждому из элементов можно получить, зная его массивный индекс. В массиве элементы могут быть любого из возможных типов данных, в том числе и элементы с типом данных «Массив». Всем элементам из массива присваивается уникальный номер, такой номер именуется индексом. Если знать индекс элемента и название массива, то можно получить доступ к данному элементу. Так как одним из главных свойств массива является упорядоченность, то индекс первого элемента массива равен нулю, у второго – единицей и далее по порядку.
Чтобы сформировать новый массив, необходимо обратиться к конструктору системы 1С и напечатать «Новый», создание массива элементов происходит следующим образом:
Новый Массив (<КоличествоЭлементов1>…<Количество элементовN>).
Стоит отметить, что параметр «КоличествоЭлементов», который был показан выше, не является обязательным. Когда данный параметр один, то такой массив называют одномерным, если два параметра – это двумерный массив, если более двух, то такой массив называют многомерным.
К примеру, если есть следующая строка в программном коде:
, то это значит, что «Массив1» имеет 10 элементов и является примером одномерного массива.
Если же, есть следующая строка программного кода:
, то это значит, что это пример двумерного массива и он состоит из 6 элементов, можно представлять в виде таблицы, где первое значение – это количество строк, а второе – количество столбцов.
Если в массиве нет ни единого элемента, то его называют пустым массивом.
Также, стоит заметить, что в системе 1С есть ещё таблицы значений, однако, в отличии от них, с массивами можно работать и в тонком, и в толстом клиенте.
К примеру, пользователь создал некоторый массив, который не является пустым, в таком случае, элементы массива существуют, но не имеют значений. Взглянем на такой массив внутри отладчика системы 1С. Там можно увидеть, что около всех элементов имеется тип вида «Неопределено», как демонстрируется на скриншоте с примером ниже:
Неопределенно в массиве – коллекции значений
2. Функции работы с массивами
Рассмотрим основные функции работы с массивами.
Обращение к конкретному элементу массива происходит через индекс данного элемента, где индекс указывается в квадратных скобах, как показано ниже:
Функция работы с массивом – обращение к элементу
Можно обратить внимание на то, что каждый элемент из массива может иметь различный тип, даже ссылочный.
Если указать индекс элемента, то можно его задать, а можно и прочесть, как показано ниже:
Функция работы с массивом – задание типа
Индекс, который прописывается в квадратных скобах, не может быть больше, чем суммарное количество элементов, минус единица (ведь, индекс первого элемента – это ноль).
К примеру, пропишем следующий код в программе:
Предпосылка для ошибки Индекс находится за границами массива
По окончанию его выполнения, возникнет ошибка «Индекс находится за границами массива», как демонстрируется на скриншоте окна с ошибкой ниже:
Индекс находится за границами массива
В скобах указали значение 5, однако, массив имеет начало на нуле, значит, конечный индекс будет 4, поэтому данная формулировка не корректна.
3. Использование двумерных массивов
Рассмотрим то, какие стандартные операции можно проводить с массивами, в том числе, с двумерными:
· Перебирать элементы в массиве. Данное действие можно выполнить двумя методами. Первый метод – это при помощи такого инструмента, который прозвали «китайский код», в этом случае, для каждого из элементов массива будет присвоено необходимое значение, это будет выглядеть следующим образом:
Использование двумерного массива – китайский код
Такое решение может применяться и быть полезно, однако, более часто встречается задача, в которой необходимо прочесть каждый из элементов массива, при помощи цикла. Таким образом, нужно внутри тела цикла пройтись по всем индексам. Такой способ перебора будет иметь следующий вид:
Использование двумерного массива для перебора
Либо, можно воспользоваться иным видом цикла, результат будет одинаков:
Цикл при использовании двумерного массива
· Количество элементов в массиве. Такая операция тоже довольно полезна и часто встречается. Чтобы найти количество элементов в двумерном массиве, можно воспользоваться одним из двух способов. Первый – это задействовать метод «Количество()», а второй – задействовать метод «ВГраница()». В первом способе будет ответ в виде количества элементов внутри массива. А во втором случае ответ будет в виде максимального индекса данного массива, то есть – верхняя граница массива. В таком случае, для первого способа, перебор будет выглядеть так:
Пример - как найти количество элементов двумерного массива
Для второго способа программный код будет следующим:
Код чтобы найти количество элементов двумерного массива
· Добавление элементов в массив. Данное действие можно осуществить при помощи двух методов, а именно: метод «Добавить()» и метод «Вставить()». Для первого метода, будет добавлен элемент в самый конец массива, после существующих элементов, а во втором случае – элемент будет вставлен в необходимый массивный индекс.
Добавление элементов в массив
В данном программном решении был, изначально, создан пустой массив, после чего, произошло добавление элементов в массив, первый, далее вставили ещё элемент, но на индекс ноль, а затем снова добавили, результатом будет следующее:
Пример добавления элементов в массив
· Работа с многомерными массивами данных проходит аналогично, однако, не стоит забывать, что элементы в многомерном массиве – это также массивы. В многомерных массивах два и более параметров, к примеру: МассивМног1 = Массив(3,2,5). Тут был создан многомерный массив данных, который имеет три элемента, в каждом элементе-массиве находится по два массива с 5 элементами в каждом.
Рассмотрим двумерный массив следующий, его создание будет таким:
Пример двумерного массива для создания многомерного
Чтобы вывести в окно с сообщениями понадобится следующий программный код:
Программный код в многомерном массиве данных
Результатом выполнения которого будет сообщение, в котором будет отображен данный массив:
Пример двумерного массива - отображение
В данной статье было рассмотрено что такое массивы и как с ними работать в системе 1С, а также были определены различные базовые операции при использовании двумерных массивов.
Специалист компании «Кодерлайн»
Айдар Фархутдинов