代码
use List::MoreUtils 'pairwise'; # http://stackoverflow.com/a/1865966/54964
my @offset = (0.28)x scalar(@x); # http://www.perlmonks.org/?node_id=110603
my @x = pairwise { $a + $b } @x, @offset;
我希望通过默认工具找到更好的方法。
有没有更好的方法在Perl中添加数组?
答案 0 :(得分:6)
此处不需要成对数组求和:这是一个问题,您可以选择创建与原始数组一样大的第二个数组(至少使程序的内存占用量增加一倍)。
您所做的只是为@x
的每个元素添加一个常量。使用for
循环:
$_ += 0.28 for @x;
答案 1 :(得分:2)
首先让它发挥作用,然后让它变得更好。或者换句话说,避免过早优化。
my $offset = 0.28;
for my $x_value ( @x ){
$x_value += $offset;
}
简单意味着那些必须维护代码的人会喜欢你。 ☻