如果我使用,
foreach my $key (sort keys %hash) { print $hash{$key} . "\n"; }
列表可能会出来,
0 0001 1000 203 23
代替
0 0001 23 203 1000
foreach my $key (sort { $a <=> $b} keys %hash) { print $hash{$key} . "\n"; }
排序操作采用可选的比较“子程序”(作为一个代码块,就像我在这里完成的,或者一个子程序的名称).我提供了一个内联比较,使用内置的数值比较运算符’< =>‘将键视为数字.