我可以直接访问列表中的元素:
$foo = (qw(a b c))[2]; # $foo = "c"
我可以为哈希分配一个列表:
%h = (a=>0,b=>1,c=>2); $foo = $h{c}; # $foo = 2
那么,为什么我不能直接将列表视为哈希?
$foo = (a=>0,c=>2){c}; # Syntax error
我能找到的最接近的是创建一个hashref:
$foo = {a=>0,c=>2}->{c};
是否有正确的语法来将列表作为哈希访问,或者为什么不是?
解决方法
您不能将列表用作哈希,因为列表不是哈希值. 原文链接:https://www.f2er.com/Perl/241732.html