Да, элементы в операторе foreach
повторяются по порядку.
Ваш вопрос может возникнуть из-за путаницы по поводу перебора элементов хеша:
my %hash = ('a' => 1, 'b' => 2, 'c' => 3);
foreach my $key (keys %hash) { print $key } ; # output is "cab"
Но, казалось бы, случайный порядок - это артефакт того, как данные хранятся в хеш-таблице Perl (данные в хеш-таблице Perl не упорядочены). Это оператор keys
, который «меняет» порядок хеш-таблицы, а не foreach
.