来自非perl程序员

时间:2013-01-16 19:25:15

标签: perl

任何perl专家都可以帮助我理解这个perl代码块

  $a=18;
$b=55;
$c=16;
$d=88;
$mtk = {
    'A'     => [$a, $b],
     'M'   => [$c, $d]

    };

这个字典是否包含char和pair以及如何访问键和值 非常感谢

2 个答案:

答案 0 :(得分:8)

$a$b$c$dscalars$mtkreferencehash of arrayrefs。您可以像访问它一样访问它:

print $mtk->{A}[0]; ## 18

如果您刚开始使用此代码,我会建议您使用该书Learning Perl

perldoc perlreftut

答案 1 :(得分:1)

这是数组refs作为值的哈希引用。这是下面的遍历代码:

for my $key (sort keys %$mtk) {
    print "Current key is $key\n";
    for my $val (@{ $mtk->{$key} }) {
        print "... and one of value is $val\n";
    }
}

输出

Current key is A
... and one of value is 18
... and one of value is 55
Current key is M
... and one of value is 16
... and one of value is 88