Perl 使用拼接修改数组内容
我正在尝试编写一个脚本,该脚本使用splice函数在特定数组位置插入“1”,打印它,然后在同一位置插入“0”。到目前为止,我的逻辑是:Perl 使用拼接修改数组内容,perl,Perl,我正在尝试编写一个脚本,该脚本使用splice函数在特定数组位置插入“1”,打印它,然后在同一位置插入“0”。到目前为止,我的逻辑是: my @array = (0) x 4096; for ($j=0;$j<3;$j++) { splice ( @array, $array[$j],1,1); print "$j---$array[$j]\n"; splice ( @array, $array[$j],1,0 ); } my@array=(0)x4096; 对于($j=0;$j我认为你
my @array = (0) x 4096;
for ($j=0;$j<3;$j++) {
splice ( @array, $array[$j],1,1);
print "$j---$array[$j]\n";
splice ( @array, $array[$j],1,0 );
}
my@array=(0)x4096;
对于($j=0;$j我认为你不需要splice
来做你想做的事。只需要一个简单的任务:
use warnings;
use strict;
my @array = (0) x 4096;
for (my $j = 0 ; $j < 3 ; $j++ ) {
$array[$j] = 1;
print "$j---$array[$j]\n";
$array[$j] = 0;
}
__END__
0---1
1---1
2---1
splice
需要索引而不是元素:
splice ( @array, $j,1,1);
在您的例子中,您将0
(元素值)作为索引传递,以便它在开头插入一个元素。但是用单个元素替换单个元素最好通过简单赋值来完成
splice ( @array, $j,1,1);