掌握多种排序方式

Perl默认按UTF-8排序规则进行排序。

如果不想用默认的UTF-8排序,那你就需要按自己编写用于编写用于比较的子程序。

1. 比较(sort)子程序

#用字符cmp操作比较
my @list = sort {$a cmp $b} (16,1,8,2,4,32);
#按数字大小比较
my @list = sort {$a <=> $b} (16,1,8,2,4,32);
#对换a,b的位置得到倒序结果
#可以根据$a和$b的值计算后再做比较
my @list = sort { -M $a <=> -M $b } @list ;
# 根据散列值的大小进行排序
sort { $elems{$a} <=> $elems{$b} }  keys %elems;
# 多键进行排序
sort {
 ...
 or
...
}
原文地址:https://www.cnblogs.com/tjxwg/p/2955124.html