原帖由 50644658 于 2005-11-16 18:26 发表
大家好,我是新来的,弱弱的问一下,
我的数组中有若干个数字,我想把他们按照数字大小排序再输出,如何实现?
sort似乎是按照asc码排序的,不能按照数字大小排序,是么?
0 < 5
10 == 10.0
10 <=> 9.5
'a' lt 'b'
'a' eq 'A'
"joseph" eq "joseph "
"H" cmp "He"
原帖由 50644658 于 2005-11-16 18:26 发表
大家好,我是新来的,弱弱的问一下,
我的数组中有若干个数字,我想把他们按照数字大小排序再输出,如何实现?
sort似乎是按照asc码排序的,不能按照数字大小排序,是么?
原帖由 af80 于 2005-11-16 18:37 发表
sort { $a <=> $b } @array; 升序排列
sort { $b <=> $a } @array; 降序排列
原帖由 apile 于 2005-11-16 18:47 发表
perldoc -f sort
可以看到.....用法...
原帖由 50644658 于 2005-11-16 18:57 发表
全鸟文……哪里有这些东西的中文版本咩?
原帖由 兰花仙子 于 2005-11-16 19:42 发表
看看偶翻译的"简简单单"讲sort:
http://bbs.chinaunix.net/viewthr ... &extra=page%3D5
原帖由 50644658 于 2005-11-16 16:03 发表
我快晕了,直接定义的数组@array=(1,2,3,4,5)可以用sort排序
我用push @array,1;……;push @array,5;生成的数组sort不能排序?
这两者有什么区别么?
原帖由 50644658 于 2005-11-17 10:47 发表
我发现问题所在了,用@array= sort {$a <=> $b} @array就好了,不过第一次刚看到af80的答复的时候我直接用的sort {$a <=> $b} @array也是可以对@array排序的,但是后来却无法复现了……
欢迎光临 Chinaunix (http://bbs.chinaunix.net/) | Powered by Discuz! X3.2 |