У меня возникли проблемы при попытке отсортировать ссылку на массив хэш на основе значения в хэше, структура данных выглядит следующим образом:Сортировка хэш ссылки на массив
my %usera = (name => 'tom',
weight=> 10);
my %userb = (name => 'harry',
weight=> 1);
my %userc = (name => 'peter',
weight=> 5);
my $users = [];
push(@$users,\%usera,\%userb,\%userc);
Я хочу, чтобы отсортировать результаты по весу так что он вернется в порядок «Том, Питер, Гарри», но мне не повезло. Я пробовал:
for my $user (sort{ $users->[$a]{'Weight'} <=> $users->[$b]{'Weight'} } @$users){
.....
}
Что я думал, возможно, сработало, но любви там не было.
Любая идея?
TIA!
Определите '' возвращайтесь '', пожалуйста. Вы имеете в виду, что вы напечатали значения внутри цикла? – TLP