0

我在数组中有一些标量值

@array=(1,2,3,4,5);

我们可以直接将这些值分配给变量

($a,$b,$c,$d,$e)=@array;

有没有办法让我可以添加@array 数字的相应值,如 $x +=10;

($a,$b,$c,$d,$e) +=@array;

抱歉问了这么愚蠢的问题;)

4

2 回答 2

1

尝试使用map

my @array=(1,2,3,4,5);
my ($a,$b,$c,$d,$e) = map { $_ + 10 } @array;
于 2013-11-08T09:46:29.907 回答
0

sum您可以使用from对数组的所有元素求和List::Util

use List::Util qw(sum);

my $sum = sum(@array);

更新:您似乎想逐个元素添加数组,然后您可以使用pairwisefrom List::Moreutils

use List::MoreUtils qw(pairwise);

my @array = qw(10 20 30);
my @incr  = qw( 1  2  3);
pairwise { $a += $b } @array, @incr;   # (11,22,33)
于 2013-11-08T09:32:34.100 回答