Поиск

Укладка строительных блоков: списки и массивы

Скаляры Perl — существительные в единственном числе. Они могут представлять только один объект — слово, запись, документ, строку текста или символ. Однако иногда требуется оперировать целыми коллекциями объектов — набором слов, совокупностью записей, несколькими документами, 50 строками текста или десятками символов.

Множества объектов в Perl реализованы с помощью списков данных. Списки данных могут быть представлены тремя способами: с использованием простых списков, массивов и ассоциативных массивов.

Списки являются простейшей формой представления множества данных, по сути — это просто группа скаляров. Список представляет собой последовательность имен скаляров, разделенных запятыми. Вся последовательность заключена в круглые скобки. Например (2, 5, $а, "Bob") — список, состоящий из двух чисел, переменной $а и слова "Bob". Каждый отдельный скаляр называется элементом списка. Как и следовало ожидать, списки могут содержать произвольное количество элементов. Поскольку списки представляют собой коллекции скаляров, а скаляры также могут быть сколь угодно велики, то и списки могут быть довольно внушительных размеров.

Для хранения списка в виде переменной используется массив. Имена переменных-массивов в Perl подчиняются тем же правилам, что и имена остальных переменных, но начинаются с символа @. Например, @F00 —допустимое имя переменной-массива в Perl. Имена скаляров и массивов могут совпадать, например $names и @names — совершенно различные переменные. Первая обозначает скаляр, а вторая — массив. Они вообще могут не иметь никакого отношения друг к другу.

Индивидуальные скаляры, входящие в массив, называются элементами массива. На элементы массива можно ссылаться с помощью их положения в массиве — так называемого индекса (например, можно сослаться на третий элемент массива @F00, пятый элемент массива @names и т. д.).

В Perl существует и еще один вид списков — хэш, или ассоциативный массив, который имеет много общего с обычным массивом. Подробнее об ассоциативных массивах речь пойдет на 7-м занятии, "Хэши".

Основные темы этого занятия.

  • Как заполнить пустой массив.
  • Как поэлементно проверить массив.
  • Как отсортировать и распечатать массив.
  • Как преобразовать скаляры в массивы и как выполнить обратное преобразование.