我有一个2D数组。 我可以通过以下方式获得给定的列:
my @column_zero=map {$_->[0]} @{$twod_array};
然后我可以随意操纵@column_zero
。
但是如何将它放回二维数组?
答案 0 :(得分:4)
或许更好地获取对值的引用:
my @ref_to_column_zero = map { \($_->[0]) } @{$twod_array};
...所以你可以直接操作这些值:你只需要记住存在于这个数组中的引用,所以它们应该被解引用。例如:
for (@ref_to_column_zero) {
${ $_ } *=2;
}
如果您更喜欢使用旧方法,可以这样做:
for (0..$#column_zero) {
$twod_array->[$_][0] = $column_zero[$_];
}
答案 1 :(得分:1)
TMTOWTDI所以
do{my $i; $twod_array[$i++][0] = $_ for @column_zero;};