【转】 List::Util 模块--perl函数处理数组

http://bnuzhutao.cn/archives/788 全文转载,归http://bnuzhutao.cn/about-me

(1)求数组的和:不需要一个一个地累加,直接调用 sum 函数

use List::Util qw/sum/;
my @array = (10, 20, 30, 40);
my $sum = sum @array;       # 得到 100

 

(2)求数组的最大、最小值:不需要逐个比较,直接调用 max 和 min 函数

use List::Util qw/max min/;
my @array = (10, -1, 6, 25, 8);
my $max = max @array;           # 得到 25
my $min = min @array;           # 得到 -1

(3)如果是按照字符串排列的最大、最小值呢?调用 maxstr 和 minstr 函数

use List::Util qw/maxstr minstr/;
my @array = ("Beijing", "Shanghai", "Guangzhou", "Chengdu", "Nanjing");
my $maxstr = maxstr @array;     # 得到 Shanghai
my $minstr = minstr @array;     # 得到 Beijing

还有一个不得不说的秘密:这些函数都是经过 C 优化的,所以执行速度不但不会慢,反而非常快,嗖嗖的!

posted @ 2012-08-09 13:59  Puriney  阅读(326)  评论(1编辑  收藏  举报