将哈希元素初始化为0

Ope*_*ast 2 perl hashcode perl-data-structures

我通过这样做在Perl中声明了一个哈希:

my %hash = ();
Run Code Online (Sandbox Code Playgroud)

我继续向哈希添加元素.有时,$hash{$x}没有定义,意味着它可能是null.因此,当我尝试打印它时,我什么也得不到.我希望0$x没有定义条目的情况下看到.有人能告诉我该怎么做?如何初始化哈希元素0

Ben*_* W. 6

而不是试图设置默认值,您可以在使用遇到一个未定义的值打印默认值定义,或操作,//(适用于Perl的5.10或更高版本).

在此示例中,当您打印哈希元素时,您可以打印元素,或者如果未定义,则0:

use 5.010;

say $hash{$x} // 0;
Run Code Online (Sandbox Code Playgroud)