用户登录
用户注册

分享至

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

  • 作者: 嗫?暁雲?
  • 来源: 51数据库
  • 2020-08-09
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:\>

软件
前端设计
程序设计
Java相关