Присоединение массива

Проблема

Требуется объединить два массива, дописав все элементы одного из них в конец другого.

Решение

Воспользуйтесь функцией push:
push(@ARRAY1, @ARRAY2);

Комментарий

Функция push оптимизирована для записи списка в конец массива. Два массива также можно объединить посредством сглаживания (flattening) списков Perl, однако в этом случае выполняется намного больше операций копирования, чем при использовании push:
@ARRAY1 = (@ARRAY1, @ARRAY2);
Ниже показан пример практического использования push:
@members = ("Time", "Flies");
@initiates = ("An", "Arrow");
push(@members, @initiates);
# members содержит элементы ("Time", "Flies", "An", "Arrow")
Если содержимое одного массива требуется вставить в середину другого, воспользуйтесь функцией splice:
slice(@members, 2, 0, "Like", @initiates);
print "@members\n";
splice(@members, 0, 1, "Fruit");
splice(@members, -2, 2, "A", "Banana");
print "@members\n";
Результат выглядит так:
Time  Flies  Like  An  Arrow
Fruit  Flies  Like  A  Banana

См. также

Описание функций splice и push



2013-09-10 17:05:19

Proverte kod v komentariyah gde pro list tam oshibki detskie




Оставить комментарий:
Ваше Имя:
Email:
Антибот: *  
Ваш комментарий: