sea*_*man 4 perl hash perl-hash
我正在查看此处的示例: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";
}
Run Code Online (Sandbox Code Playgroud)
这段代码我不完全理解,但是当我试验它时,它从最低到最高排序.如何翻转它从最高到最低排序?
Ωme*_*ega 14
只需使用reverse sort而不是sort.
foreach my $fruit (reverse sort keys %data) { ...
che*_*ner 12
交换$a和$b:
foreach my $fruit (sort {$data{$b} <=> $data{$a}} keys %data) {
Run Code Online (Sandbox Code Playgroud)