my $value = exists($hash{$k}) ? $hash{$k} : 'default';
Run Code Online (Sandbox Code Playgroud)
要实际更改哈希值,请使用
$hash{$k} = 'default' if !exists($hash{k});
Run Code Online (Sandbox Code Playgroud)
如果$hash{$k}
始终定义它是否存在,您也可以使用
my $value = defined($hash{$k}) ? $hash{$k} : 'default';
Run Code Online (Sandbox Code Playgroud)
这可以减少到
my $value = $hash{$k} // 'default'; # 5.10+
Run Code Online (Sandbox Code Playgroud)
要实际更改哈希值,请使用
$hash{$k} = 'default' if !defined($hash{k});
Run Code Online (Sandbox Code Playgroud)
要么
$hash{$k} //= 'default'; # 5.10+
Run Code Online (Sandbox Code Playgroud)
如果$hash{$k}
存在则总是如此,您也可以使用
my $value = $hash{$k} ? $hash{$k} : 'default';
Run Code Online (Sandbox Code Playgroud)
这可以减少到
my $value = $hash{$k} || 'default';
Run Code Online (Sandbox Code Playgroud)
要实际更改哈希值,请使用
$hash{$k} = 'default' if !$hash{k};
Run Code Online (Sandbox Code Playgroud)
要么
$hash{$k} ||= 'default';
Run Code Online (Sandbox Code Playgroud)