如何组合两个Perl哈希?

evo*_*ion 3 perl

在我采取冗长/冗长/不正确的方式之前,我问这个问题.

我正在使用Perl.我有两个哈希.一个包含默认值,一个可能是用户定义的值,在某些情况下会覆盖默认值.

将这些哈希值连接在一起的最简单方法是什么,但是对于我们选择用户值的相同键,存在默认值和用户定义值.

$defaults = {
 type => paper,
 number => 3
};

 $user_defined = {
 number => 5
};
Run Code Online (Sandbox Code Playgroud)

所需的最终连接输出/哈希是

$result = {
    type => paper,
    number => 5,
}
Run Code Online (Sandbox Code Playgroud)

che*_*ner 11

我用

my $result = { %$defaults, %$user_defined };
Run Code Online (Sandbox Code Playgroud)