我有一个声明如下的数组哈希:
my %hash;
push @{ $hash{ $value1[$_] } }, [ $value1[$_], $value2[$_], $value3[$_], $value4[$_], $value5[$_] ] for 0 .. $#value1;
我希望能够使用以下方法检查每个键的值:
open KEYS, '>keys.txt' or die "Can't write to 'keys.txt'\n";
for my $key ( sort keys %hash ) {
print KEYS "Key: $key contains the values: ";
for my $value ( @{$hash{$value1}} ) {
print KEYS "$value ";
}
print KEYS "\n";
}
close(KEYS);
虽然我可以使用 Data::Dumper 可视化键和关联的值,但上述代码的输出给出了每个键的内存位置,而不是值。例如:
Key: 'Value1' contains the values: ARRAY(0x7fcd8645ba68)
即使我将相同数量的值推送到每个数组上,每个键都包含不同数量的值
我这样做的方式有问题吗?