我正在查看这里的一个示例: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";
}
这段代码我不完全理解,但当我尝试它时,它从最低到最高排序。如何将其翻转为从最高到最低排序?
发布于 2012-04-19 03:21:50
交换$a
和$b
foreach my $fruit (sort {$data{$b} <=> $data{$a}} keys %data) {
发布于 2012-04-19 03:24:29
只需使用reverse sort
而不是sort
。
foreach my $fruit (reverse sort keys %data) { ...
https://stackoverflow.com/questions/10216419
复制相似问题