虽然@Adam Millerchip 向您展示了如何访问您想要的元素,但我将评论您问题的另一部分。你说:
我的理解(由 证实Data::Dumper
)
事实上,没有这样的事情得到证实Data::Dumper
。如果您想查看 中的内容,您必须传递对to@keyPair
的引用。也就是说,您必须使用@keyPair
Dumper
print Dumper \@keypair;
代替
print Dumper @keypair; # I suspect you did this
如果您传递了对 的引用@keyPair
,您会清楚地看到它是一个包含单个匿名数组的数组。
相反,通过不传递引用,您将 的元素@keyPair
作为参数传递给Dumper
. 在这种情况下,@keyPair
具有单个元素,即对具有两个元素的匿名数组的引用。Dumper
如此愚弄你思考的输出@keyPair
有两个要素。
也就是说,您的代码相当于:
my @x = (['a', 'b']);
print Dumper @x;
那是一样的print Dumper $x[0]
。如果您想查看 中的内容@x
,则必须传递对的引用,@x
如下所示:
print Dumper \@x;
例子:
$ perl -MData::Dumper -e "@x=(['a','b']);打印 Dumper @x"
$VAR1 = [
'一个',
'b'
];
$ perl -MData::Dumper -e "@x=(['a','b']);打印 Dumper $x[0]"
$VAR1 = [
'一个',
'b'
];
$ perl -MData::Dumper -e "@x=(['a','b']);打印 Dumper \@x"
$VAR1 = [
[
'一个',
'b'
]
];