Конструкторы списков.
Список - множество значений, перечисленных через запятую и заключенных в круглые скобки. В списковом контексте список возвращает последний элемент списка.
Пример:
@var1 = (1, 2, "привет", 1.2); # Присвоить значение элементам.
где $var1[0] = 1, $var1[1] = 2, $var1[2] = "привет" $var1[3] = 1.2 $var1 = (1, 2, "привет", 1.2);
а здесь $var1 = 1.2 т.е. последнее значение списка. Допускается применять в списке другие списки, но в полученном списке уже невозможно различить начало и конец включенных списков.
Пример:
@s1 = (1, 2, 3); # Первый список @s2 = (6, 7, 8); # Второй @s = (0, @s1, 4, 5, @s2, 9, 10); # Включаем списки @s1 и @s2 print @s; # Результат: 012345678910 - значения без пробелов.
Список без элементов обозначается как () и называется нуль-списком. Списковое выражение можно употреблять как имя массива, но при этом его нужно брать в круглые скобки.
Пример:
print ("январь","февраль","март")[1];
Результат: февраль
Список может быть присвоен списку только если каждый элемент в списке в левой части выражения допустим по типу списку в правой части.
Пример:
($a, $b, $c) = (1, 2, 3); # $a = 1, $b = 2, $c = 3
Присваивание списков в скалярном контексте возвращает количество присвоенных элементов.
Пример:
$x = (($a, $b, $c) = (1,2)); # Результат $x=2
В случае присваивания списка хешу, список рассматривается как пары: ключ-значение.
Пример:
%дни_месяца = ("январь", 31, "февраль", 30);
Результат: $дни_месяца{январь} = 31, $дни_месяца{февраль} = 30 Для удобства записи можно использовать выражение с => .
Пример:
%дни_месяца = ( январь => 31, февраль => 30, );
1 2 3 4 5
8 8 8
| |