高级排序的关键在于你要指定排序的方式,利用的 *** 作符是spaceship operator(<=>):
下面是按照你的要求进行的排序:
@number=qw/5 10 15 3 2 4 8 6 /;my @descending =sort {$a<=>$b} @number;#这里$a=5,$b=10,因为$a在前,perl得到的结果是小数在前,也就是升序排列print "@descending\n";结果如下:
F:\>perl\a.pl2 3 4 5 6 8 10 15F:\>
如果要降序排列,我们只要把程序的第二行变成sort{$b<=>$a}就可以了,
程序如下:
@number=qw/5 10 15 3 2 4 8 6 /;my @descending =sort {$b<=>$a} @number;print "@descending\n";
结果如下:
F:\>perl\a.pl15 10 8 6 5 4 3 2F:\>总结
以上是内存溢出为你收集整理的perl高级排序学习,<=> *** 作符,飞船 *** 作符全部内容,希望文章能够帮你解决perl高级排序学习,<=> *** 作符,飞船 *** 作符所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)