以下代码的输出始终为空.不确定我做错了什么,并希望得到任何帮助.如何获取散列数组中特定散列中键的值?
use strict;
use warnings;
my %dot1 = ('a'=>1,'b'=>2);
my %dot2 = ('a'=>3,'b'=>4);
my %dot3 = ('a'=>5,'b'=>6);
my %dot4 = ('a'=>7,'b'=>8);
my @array = (%dot1,%dot2,%dot3,%dot4);
my %x = $array[2];
my $y = $x->{'a'};
print "$y \n";
Run Code Online (Sandbox Code Playgroud) 我有一个perl脚本,我们将哈希转换为数组 -
my %info = (
'name' => $1,
'ip' => $2,
'parent' => '',
'isLocal' => 0,
'clip' => 0,
);
my @siteinfos = ();
push( @siteinfos, \%info );
Run Code Online (Sandbox Code Playgroud)
现在我可以通过以下方式访问阵列:
foreach my $site(@siteinfos) {
if ( $site->{'name'} eq $sitename) {
.....
}
Run Code Online (Sandbox Code Playgroud)
首先,我不确定这种转换是如何工作的.其次,现在我想以(key,pair)格式向这个数组中添加更多元素.我该怎么做?