我试图理解shift
函数的这个例子。我记得读过它应该提取(删除并返回)第一个值,但是当我尝试执行这段代码时,我可以看到它返回数组中的所有元素:
@array = (1..5);
while ($element = shift(@array)) {
print("$element - ");
}
print("The End\n");
输出为:
1 - 2 - 3 - 4 - 5 - The End
非常感谢任何解释!
来源:TutorialsPoint
答案 0 :(得分:6)
它的工作方式相同 - 删除并返回第一个值。由于while loop
,您获得了所有值。
要以简单的方式理解,请从代码中删除while loop
。
my @array = (1..5);
my $element = shift(@array);
print $element, "\n";
输出:
1