如果有人能启发我了解我的错误,我会很高兴:
my %mymap;
@mymap{"balloon"} = {1,2,3};
print $mymap{"balloon"}[0] . "\n";
最佳答案
$mymap{'balloon'}
是散列而不是数组。表达式 {1,2,3}
创建一个哈希:
{
'1' => 2,
'3' => undef
}
您将其分配给
%mymap
的切片对应键列表:('balloon')
.由于键列表是 1 项而值列表是一项,因此您执行了与$mymap{'balloon'} = { 1 => 2, 3 => undef };
如果您使用过
strict
和 warnings
它会让你知道你的错误。我有:Scalar value @mymap{"balloon"} better written as $mymap{"balloon"} at - line 3.
Odd number of elements in anonymous hash at - line 3.
关于Perl "Not an ARRAY reference"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7094626/