1

我有以下数据结构:

@keys = [1, 2, 3, 4];

并使用循环(for) from 1to 4,我想创建一个新的数据结构,如

$new = +{ key     => '1',
          meaning => '',
          time    => '', };

所以,在这种情况下,基本上我会有四个$new数据结构。

我需要使用地图功能吗?

4

2 回答 2

5

令人困惑的问题,但我认为你的问题是

@keys = [1, 2, 3, 4];

可能不是你的意思。它应该是

@keys = (1, 2, 3, 4);

或者

$keysref = [1, 2, 3, 4];

我会假设第一个。那么是的,您可以使用 map 填充记录数组

@records = map( {key => $_,meaning => '',time => ''}, @keys );
于 2013-05-30T08:17:18.707 回答
1
my @keys = (1, 2, 3, 4);

my @array = map +{ 
  key => $_,
  meaning => '',
  time => '', 
} @keys;

现在@array有相同数量的元素@keys,它们是哈希引用。

于 2013-05-30T08:16:38.087 回答