Операторы shift и unshift

Операторы push и pop выполняют операции в конце массива (у правого края, среди элементов с большими индексами – в зависимости от того, как вам удобнее думать об этом). Похожие операторы unshift и shift выполняют соответствующие действия в «начале» массива (у левого края, среди элементов с наименьшими индексами). Несколько примеров:

@array = qw# dino fred barney #;
$m = shift(@array); # $m присваивается "dino", @array теперь
# содержит ("fred", "barney")
$n = shift @array; # $n присваивается "fred", @array теперь
# содержит ("barney")
shift @array; # @array остается пустым
$o = shift @array; # $o присваивается undef, @array по-прежнему пуст
unshift(@array, 5); # @array содержит список из одного элемента (5)
unshift @array, 4; # @array теперь содержит (4, 5)
@others = 1..3;
unshift @array, @others; # @array теперь содержит (1, 2, 3, 4, 5)

По аналогии с pop, shift возвращает undef для пустой переменной массива.

Оцените статью: (0 голосов)
0 5 0

Статьи из раздела Perl на эту тему:
в списочном контексте
Главная служебная переменная: $_
Интерполяция массивов в строках
Использование выражений, создающих скаляры, в списочном контексте
Использование выражений, создающих списки, в скалярном контексте

Вернуться в раздел: Perl / 2. Списки и массивы