另一个关于hash作为论据的问题trans.在下面的代码中,简单地hash给出了一个不正确的结果,但是替换它keys并values使其正确.怎么了?
my @alph1 = <a+ b+ c+ d+ e+ f+>;
my @alph2 = <A_ B_ C_ D_ E_ F_>;
my %h;
%h{ @alph1 } = @alph2;
my $str = 'a+bc de+f';
my $text = $str.trans(%h);
say $text; # A_BC DE_F (incorrect)
$text = $str.trans(%h.keys => %h.values);
say $text; # A_bc dE_f (correct)
Run Code Online (Sandbox Code Playgroud) perl6 ×1