Исходники.Ру - Программирование
Исходники
Статьи
Книги и учебники
Скрипты
Новости RSS
Магазин программиста

Главная » Статьи Web-мастеру » Perl - Статьи »

Обсудить на форуме Обсудить на форуме

Работа с массивами в Perl

Перевод достаточно вольный. Комментарии и предложения оставляете в виде комментариев, внизу страницы

Автор статьи не дает никаких гарантий, что код приведенный в ней будучи "преобразованный" с помощью 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;

Автор

Alex BATKO <abatko AT cs.mcgill.ca>

Спасибо всем, кто присылал комментарии и предложения.


Может пригодится:


Автор: Alex BATKO
Прочитано: 8851
Рейтинг:
Оценить: 1 2 3 4 5

Комментарии: (1)

Прислал: Fox
Самое неприятное в Перл, после ООП - это работа с многомерными массивами, сущее извращение :(

Добавить комментарий
Ваше имя*:
Ваш email:
URL Вашего сайта:
Ваш комментарий*:
Код безопастности*:

Рассылка новостей
Рейтинги
© 2007, Программирование Исходники.Ру