4

ここにある例を見ています: http://perlmeme.org/tutorials/sort_function.html

そして、各キーの値に基づいてハッシュをソートする次のコードを提供します。

# Using <=> instead of cmp because of the numbers
    foreach my $fruit (sort {$data{$a} <=> $data{$b}} keys %data) {
        print $fruit . ": " . $data{$fruit} . "\n";
    }

このコードは完全には理解できませんが、試してみると、最低から最高の順に並べ替えられます。最高から最低の順に並べ替えるにはどうすればよいですか?

4

2 に答える 2

16

reverse sortの代わりに使用してsortください。

foreach my $fruit (reverse sort keys %data) { ...

于 2012-04-18T19:24:29.493 に答える
14

スワップ$a$b:

foreach my $fruit (sort {$data{$b} <=> $data{$a}} keys %data) {
于 2012-04-18T19:21:50.187 に答える