如何使用foreach跳过数组中的第一个元素?

时间:2012-12-22 19:25:37

标签: arrays perl foreach

说我有一个数组:

my @arr = (1,2,3,4,5);

现在我可以通过foreach迭代它了:

foreach ( @arr ) {
    print $_;
}

但有没有办法从第二个(例如)迭代到最后一个?

提前致谢。

2 个答案:

答案 0 :(得分:14)

这是perl。总是有不止一种方法可以做到这一点。比如数组切片:

for (@arr[1 .. $#arr])   # for and foreach are exactly the same in perl

您可以使用shift作为Andy Lester的建议,但这当然会改变原始阵列。

答案 1 :(得分:7)

在循环之前,只需移开第一个元素。

my @arr = ( 1..5 );
shift @arr; # Remove the first element and throw it away

foreach ( @arr ) {
    print "$_\n";
}