Скажем, у вас есть массив @a = qw/ a b c d/;
и хеш %a = ('a' => 1, 'b' => 1, 'c' => 1, 'd' => 1);
Есть ли ситуация, когда создание версии массива лучше, чем создание хэша (кроме того, когда вам нужно перебирать все значения как что-то вроде
for (@a){
....
В этом случае вам придется использовать keys %a
, если вы пошли с хэшем)? Поскольку проверка того, является ли конкретное значение в хеше, всегда более эффективна, чем в массиве, правильно?