我想把这个价值作为关键,而关键的价值。这样做最好的方法是什么?
解决方法
改编自
http://www.dreamincode.net/forums/topic/46400-swap-hash-values/:
假设你的哈希存储在$ hash中:
while (($key,$value) = each %hash) { $hash2{$value}=$key; } %hash=%hash2;
看起来像更优雅的解决方案可以通过反向(http://www.misc-perl-info.com/perl-hashes.html#reverseph)实现:
%nhash = reverse %hash;
请注意,相反,重复的值将被覆盖。