Автор статьи не дает никаких гарантий, что код приведенный в ней будучи "преобразованный" с помощью Copy/Past заработает. Все примеры работали на момент написания статьи.
Инициализация (очистка) массива.
Реализация
my @array = ();
Реализация
$#array - это индекс (порядковый номер) последнего элемента массива (на единицу меньше,
чем количество элементов в массиве, так как массив начинается с нуля).
Присвоение $#array изменяет длину массива @array, таким образом
вы можете уничтожить (или очистить) все элементы массива между
заданным при присвоении и последним. При присвоении -1, все элементы
уничтожаются и массив очищается.
Я рекомендую следующее решение:
$#array = -1;
Определение существования элемента массива
Реализация
print "Значение СУЩЕСТВУЕТ, но может быть неопределенно.\n"
if exists $array[ $index ];
print "Значение ОПРЕДЕЛЕНО, но может быть false.\n"
if defined $array[ $index ];
print "Зачениие элемента с индексом $index TRUE.\n"
if $array[ $index ];
Определение количества элементов в массиве.
Реализация
Если вы хотите вывести количество элементов в массиве, то вот самый простой
способ:
print "size of array: " . @array . ".\n";
Реализация
Если вы хотите присвоить размер массива переменной, то просто используйте
скалярный контекст:
$size = @array;
print "size of array: $size.\n";
Явно, скалярный контекст может быть получен с помощью функции scalar
$size = scalar @array;
print "size of array: $size.\n";
Кроме этого, существует еще один способ получения количества элементов
массива. Я рекомендую использовать именно его:
Реализация
$size = $#array + 1;
|