|
В статье "Введение
в PERL" мы не коснулись темы массивов.
Сначала рассмотрим понятие списка. Список --
это упорядоченный набор скаляров. Массив --
переменная, содержащая список. К массивам
применимо понятие элемента. Каждый
элемент массива содержит некое скалярное
значение, независящее от других элементов.
Значения в списке упорядоченные, то есть,
например расположены по возрастанию от
младшего к старшему. Значения элементов
массива не обязательно упорядоченные.
Так как в Perl нет
объявления переменных как стадии, то и
количество элементов массива ограничено
только размером свободной памяти.
Существуют также пустые массивы, которые не
имеют элементов вообще.
Списочные литералы.
Списочный литерал --
способ представления массивов в программе.
Записывается он как несколько значений
скаляров через запятую, ограниченных
круглыми скобками. Значения этих скаляров и
есть элементы списка.
(3, 4, 5) # Массив из трех элементов
- 3, 4 и 5
("Николай", 23, 4.5, 4) # Массив из
четырех элементов - "Николай", 23, 4.5 и 4
Как Вы видите, совсем не
обязательно, чтобы элементы массива были
одинакового типа. На самом деле в Perl понятие
типа не совсем применимо, хотя и имеет место.
Вы, например, можете сделать переменную $temp,
присвоить ей значение 3 ($temp="3"), затем
прибавить конкатенацией (соединением строк)
к ней цифру 9($temp=$temp."9") и затем
разделить на 3($temp=$temp/13) и получить 13.
Элементы массива не
обязательно статичны, они могут
вычисляться во время определения массива:
($a, 5, $b+$a) # Массив из трех элементов:
значение переменной $a, 5 и значение суммы
$b+$a.
Пустой массив задается
так:
()
В Perl также есть операция
конструктора списка, которая создает
массив элементов от левого значения до
правого с шагом 1, например:
(1 .. 5) # Массив из пяти элементов : 1, 2, 3, 4, 5
(1 .. 3.2, 5) # Массив из четырех элементов: 1, 2, 3, 5
($a .. $b) # Массив значений из ($b-$a) (округленное
в меньшую сторону) элементов от значения $a
до $b
|