在较早的问题中,我询问了如何使用切片初始化 Perl 哈希。它是这样完成的:
my %hash = ();
my @fields = ('currency_symbol', 'currency_name');
my @array = ('BRL','Real');
@hash{@fields} = @array;
现在让我们想象一个更复杂的哈希,这是它的初始化方式:
my %hash = ();
my $iso = 'BR';
$hash->{$iso}->{currency_symbol} = 'BRL';
$hash->{$iso}->{currency_name} = 'Real';
print Dumper($hash);
这导致以下结果:
$VAR1 = {
'BR' => {
'currency_symbol' => 'BRL',
'currency_name' => 'Real'
}
};
现在的问题是:如何使用 splice 方法初始化这个特定的哈希?