perl高级排序,<=>操作符,飞船操作符

 更新时间:2013年02月09日 22:11:14   作者:  
perl高级排序的关键在于要指定排序的方式,使用的操作符是spaceship operator(<=>)

按照要求进行的排序:

复制代码 代码如下:

#!/bin/perl

@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.pl 
2 3 4 5 6 8 10 15 

F:\>

如果要降序排列,只要把程序的第二行变成sort{$b<=>$a}就可以了:

复制代码 代码如下:

#!/bin/perl

@number=qw/5 10 15 3 2 4 8 6 /; 
my @descending =sort {$b<=>$a} @number; 
print "@descending\n";

结果如下:
F:\>perl\a.pl 
15 10 8 6 5 4 3 2 

F:\>

相关文章

  • Perl的经典用法分享

    Perl的经典用法分享

    Perl的经典用法分享,学习perl的朋友可以参考下
    2013-02-02
  • perl脚本实现限制ssh最大登录次数(支持白名单)

    perl脚本实现限制ssh最大登录次数(支持白名单)

    这篇文章主要介绍了perl脚本实现限制ssh最大登录次数,脚本支持支持白名单设置,例如root可以不限制登录次数,需要的朋友可以参考下
    2014-07-07
  • Windows和Linux系统下perl连接SQL Server数据库的方法

    Windows和Linux系统下perl连接SQL Server数据库的方法

    这篇文章主要介绍了Windows和Linux系统下perl连接SQL Server数据库的方法,本文详细的讲解了Windows和Linux系统中perl如何连接Microsoft SQL Server数据库,需要的朋友可以参考下
    2014-10-10
  • 学习perl的unless控制结构

    学习perl的unless控制结构

    在perl的if控制结构中,只有当条件表达式为真时才执行某块代码。如果想让程序块在条件为假时才执行,此时可以把if改成unless
    2013-02-02
  • Perl中的单行注释和多行注释语法

    Perl中的单行注释和多行注释语法

    这篇文章主要介绍了Perl中的单行注释和多行注释语法,本文还同时讲解了其它常见编程语言的单行注释和多行注释语法,需要的朋友可以参考下
    2015-06-06
  • Perl脚本实现递归遍历目录下的文件

    Perl脚本实现递归遍历目录下的文件

    这篇文章主要介绍了Perl脚本实现递归遍历目录下的文件,本文直接给出实现代码,代码中包含明细注释,需要的朋友可以参考下
    2015-04-04
  • perl 文件操作总结

    perl 文件操作总结

    perl 文件操作总结,需要的朋友可以参考下
    2013-02-02
  • Perl中use和require用法对比分析

    Perl中use和require用法对比分析

    Perl 中的use和require,都是用来加载和引用Perl的模块,或者是子程序,区别在于Perl use是在当前默认的里面去寻找,一旦模块不在指定的区域内的化,用Perl use是不可以引入的
    2013-02-02
  • Perl集群配置管理系统Rex简明手册

    Perl集群配置管理系统Rex简明手册

    这篇文章主要介绍了Perl集群配置管理系统Rex简明手册,自动化运维的一个管理工具,需要的朋友可以参考下
    2014-06-06
  • windows安装perl及komodo IDE的详细步骤

    windows安装perl及komodo IDE的详细步骤

    这篇文章主要介绍了windows安装perl及komodo IDE的详细步骤,本文通过图文并茂的形式给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-12-12

最新评论