Perl用另一个数组添加数组

时间:2014-06-09 07:25:33

标签: arrays perl add

我浏览了网上下面的代码,试图添加两个数组。有人可以解释它的计算方法是什么来获得14?

my @a = (1,2,5)+(8,9);
print "@a";

output: 14

2 个答案:

答案 0 :(得分:4)

输出为14,$a[0]为14 => 5+9

+运算符在两个列表上强制使用标量上下文,以便获取并添加最后一个元素,

# in scalar context $x is assigned with last element
my $x = (1,2,5);
print "\$x is $x\n";

输出$x is 5

warnings pragma也会抱怨,告诉你一些可疑的东西,

Useless use of a constant (8) in void context

答案 1 :(得分:4)

从:

开始
my @a = (1,2,5)+(8,9);

scalar上下文中使用列表时,将返回最后一个元素。有关详细信息,请参阅What is the difference between a list and an array?

因此,以上两个列表减少为:

my @a = 5 + 9;

在数学上等于:

my @a = (14);