我已经@a
用散列的散列填充了数组,因此:
$a[0]{'keyA'}{'keyB'}
给我一个价值。
我现在想在数组中选择一个元素(比如 index 0
)并按字母顺序遍历散列中的所有元素,如下所示:
for my $keyA (sort keys $a[0]) {
for my $keyB (sort keys $a[0]{$keyA}) {
print $a[0]{$keyA}{$keyB};
}
}
我不知道为什么,但 Perl 完全跳过了循环。在逐步使用 Eclipse 调试器时,我可以看到这一点。
我的数组的数据::转储:
$VAR1 = [
{},
{
'Z' => { 'Z' => 1 },
'G' => { '' => 1 },
},
undef,
{
'A' => { 'A03' => 1, 'A02' => 1 },
'G' => { 'G29' => 3 },
'Z' => { 'Z' => 1 },
'F' => { 'F24' => 2, 'F27' => 1 },
},
{
'A' => { 'A02' => 2 },
'O' => { 'O62' => 1 },
'B' => { 'B05' => 1 },
},
];
任何帮助将非常感激。