Массив 1с. Описание и примеры использования
Массив — это программная коллекция (объект встроенного языка), содержащая пронумерованную последовательность значений произвольного типа. Каждому элементу присваивается последовательный целочисленный номер — индекс, начинающийся с нуля. По индексу можно получить или установить значение элемента массива.
В 1С:Предприятие 8 существует два типа массивов:
- фиксированный массив — такой массив имеет фиксированный размер, заданный при его создании. Для фиксированного массива недоступно программное изменение размера, количества и последовательности элементов;
- обычный массив — такой массив имеет динамический размер и его верхний предел практически неограничен. Таким массивом можно произвольно оперировать из встроенного языка;
Сейчас мы рассмотрим обычные массивы.
Создание и инициализация элементов массива
Создание пустого массива выполняется с помощью оператора Новый :
Для добавления элементов в массив используется одноименный метод Массив.Добавить():
Каждый новый элемент помещается в конец массива. Чтобы создать массив с заданным размером, можно воспользоваться конструктором массива. Например, так:
Для доступа к отдельным элементам массива применяется операция разыменования: указывается имя переменной, объявленной как массив, а затем, в квадратных скобках, указывается индекс элемента: ИмяМассива[Индекс] . Такие конструкции можно указывать как слева от оператора присваивания:
Так и справа: в выражениях и в качестве параметров процедур и функций:
Границы массивов
Как было сказано выше, левая граница массива постоянна и всегда равно нулю (0). Верхняя граница напрямую связана с количеством элементов в массиве. Получить ее можно двумя способами:
- С использованием метода Массив.Количество() с последующим вычитанием 1;
- С использованием одноименного метода Массив.ВГраница();
Давайте рассмотрим распространенные операции с массивами
Перебор элементов массива
Для перебора (обхода) всех элементов массива обычно используется оператор цикла Для :
Либо оператор цикла Для Каждого :
Первый способ лучше использовать, если Вам необходимо получить одновременно и индекс, и значение массива. Второй способ больше подходит для ситуации, когда нужно только последовательно перебрать все значения массива. Использование второго способа повышает «читабельность кода».
Поиск в массиве
Для поиска значений в массиве можно воспользоваться одноименным методом Массив.Найти(). Он возвращает индекс найденного элемента или Неопределено , если таковой не был найден:
Как создать массив в 1с
Вступайте в мою группу помощник программиста.
В ней мы обсуждаем программирование в 1С.
Массив
Описание:
Предназначен для доступа к элементам массива, его методам и конструктору.
Элементы коллекции: Произвольный
Для объекта доступен обход коллекции посредством оператора Для каждого … Из … Цикл. При обходе выбираются значения элементов массива.
Возможно обращение к значению элемента посредством оператора [. ]. В качестве аргумента передается индекс значения (нумерация с 0).
Массивы в 1С и как с ними работать
Под понятием «массив» в программировании понимают некоторую структуру в памяти, которая состоит из последовательности элементов, в случае 1С это универсальная коллекция значений произвольного типа. Помимо массива к универсальным коллекциям относятся:
- Список значений (в отличие от массива есть представление, реализована возможность сортировки и интерфейсного представления коллекции);
- Таблица значений – коллекция, имеющая колонки для расширенного описания значения, подобную структуру можно получить, выполнив запрос;
- Дерево значений– очень похоже на таблицу, дополненную структурой подчиненности;
- Структура– динамический набор имен и значений переменных; – подобно структуре, только переменные сопоставляются не строковым представлениям, а друг другу.
Программное создание массива
Программно массив создается с помощью конструктора:
Новый Массив(<Массив>)
Новый Массив(<КоличествоЭлементов1>,…,<КоличествоЭлементовN>)
Пример:
Методы массива:
ВГраница (UBound)
Получает наибольший индекс элемента массива. Наибольший индекс соответствует количеству элементов массива минус 1.
Пример:
Вставить (Insert)
Вставляет значение в массив по указанному индексу. Допускается указание индекса большего, чем ВГраница. В этом случае массив дополняется элементами с индексами от ВГраница()+1 до указанного в параметре индекса.
Пример:
Добавить (Add)
Добавляет элемент в конец массива. При добавлении количество элементов массива увеличивается на 1.
Пример:
Количество (Count)
Получает количество элементов в массиве.
Пример:
Найти (Find)
Выполняет поиск элемента в массиве. Если элемент найден, возвращается его индекс. Если элемент не найден, возвращается Неопределено. Метод эффективно использовать для поиска уникальных значений.
Очистить (Clear)
Удаляет все значения из массива.
Пример:
Получить (Get)
Получает значение по индексу. Работает аналогично оператору []. Применяется в случаях, когда использование оператора [] невозможно.
Пример:
Удалить (Delete)
Удаляет значение из массива по указанному индексу. Если указанный в параметре индекс больше, чем ВГраница, то никаких действий не производится и не выдается сообщение «Индекс находится за границами массива».
Пример:
Установить (Set)
Устанавливает значение по индексу. Работает аналогично оператору []. Применяется в случаях, когда использование оператора [] невозможно.
Программирование 1С 8.х для начинающих
- Вы здесь:
- Массив в 1С
Общие вопросы
Массив в 1С
- Печать
Массив в 1С
Что такое массив? Как создать массив? Как работать с массивами?
Массив — это набор значений, образным примером может служить одна колонка таблицы Excel.
Как создать массив?
Как добавить элементы в массив?
О том как работать с массивами, в т.ч. создавать многомерные массивы Вы узнаете из видеоурока, ссылка ниже.