设置未定义哈希值的默认值

时间:2013-07-04 19:18:30

标签: perl hash

我有一个散列,其值大多是整数,但有些是未定义的。我想将所有这些未定义的值设置为零,或者使用for循环,或者最好使用更优雅的方法。有人可以提出解决方案吗?

1 个答案:

答案 0 :(得分:11)

两种方法都使用foreach,

for my $key (keys %hash) {
  $hash{$key} //= 0;

}

$_ //= 0 for values %hash;

//=运算符测试变量是否未定义,并在变量值时分配新值。