10

假设我有一个数组:

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

现在我可以通过 foreach 对其进行迭代:

foreach ( @arr ) {
    print $_;
}

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

提前致谢。

4

2 回答 2

17

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

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

您可以shift按照 Andy Lester 的建议使用,但这当然会改变您的原始数组。

于 2012-12-22T19:41:11.810 回答
10

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

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

foreach ( @arr ) {
    print "$_\n";
}
于 2012-12-22T19:30:01.223 回答