我如何删除数组的第一个五行? [英] How do I remove the first five elements of an array?
本文介绍了我如何删除数组的第一个五行?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
@array = QW(一二三四五六七八);
<这里有些命令>
打印@array;
解决方案
下面几种方法,在哑的递增顺序:
使用片:
@array = @array [5 .. $#数组]
使用 拼接
:
拼接@array,0,5;
使用 移
:
为1..5转变@array;
使用 的grep
:
我的$ CNT = 0;
@array = {grep的$ ++ CNT> 5} @array;
使用 地图
:
我的$ CNT = 0;
@array = {地图++ $ CNT< 5? ():$ _} @array;
我敢肯定好得多黑客比我能想出甚至笨的方法。 :)
@array = qw(one two three four five six seven eight);
<Some command here>
print @array;
解决方案
Here are a few ways, in increasing order of dumbness:
Using a slice:
@array = @array[ 5 .. $#array ];
Using splice
:
splice @array, 0, 5;
Using shift
:
shift @array for 1..5;
Using grep
:
my $cnt = 0;
@array = grep { ++$cnt > 5 } @array;
Using map
:
my $cnt = 0;
@array = map { ++$cnt < 5 ? ( ) : $_ } @array;
I'm sure far better hackers than I can come up with even dumber ways. :)
这篇关于我如何删除数组的第一个五行?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文