只有在其密钥存在时,如何才能检索Perl哈希值?

joe*_*joe 1 perl hash

码:

%a =  ( 1 => "ONE" , 
        2 => "TWO" ,
        3 => " Three", ); 
$test_value = 1 ;

foreach $key (sort(keys %a)) {
    if  ($key == $test_value ) { 
        print $a{$key}; 
    }

}
Run Code Online (Sandbox Code Playgroud)

我只想以非常短的方式实现相同的操作.这有什么捷径吗?

Chr*_*ris 8

我想这就是你要找的东西:

print $a{$test_value};
Run Code Online (Sandbox Code Playgroud)

  • @Krish:返回值为`undef`. (3认同)
  • 你可以测试:if(存在$ a {$ test_value}){print $ a {$ test_value}; //将警告它是否存在且为null} (2认同)

Rob*_*rød 6

print $a{$test_value} if exists $a{$test_value};
Run Code Online (Sandbox Code Playgroud)