我有这个代码
#!/usr/bin/perl
use strict;
my @a = ("b","a","d","c");
my %h = ("a",1,"b",2,"c",3,"d",4);
#print '"' . join('","', @a), "\"\n";
print "\n";
foreach my $key (@a) {
print '"' . $h{$key} . '",';
}
print "\n";
Run Code Online (Sandbox Code Playgroud)
那个输出
"2","1","4","3",
Run Code Online (Sandbox Code Playgroud)
但我想它只是输出
"2","1","4","3"
Run Code Online (Sandbox Code Playgroud)
请注意,最后','不在那里.
是否有可能以特定的顺序打印哈希,或者其他一些技巧来获得我想要的输出?
更新:
根据friedo的回答,我能够做到对了.
print '"' . join('","', @h{@a}), "\"\n";
Run Code Online (Sandbox Code Playgroud)
弗里多的答案没有关于价值观的引用.