我希望根据哈希值中值的重新排序返回一个新的哈希值。这些值本身是整数数组。
例如:
hsh = {"c2" => [44,2], "c1" => [11,33], "c9" => [23,7]}
我希望能够根据值0或值1中的任意一个返回重新排序的哈希表。
非常感谢您的任何帮助 - 谢谢大家。
从这个问题的性质来看,我假设这是针对 Ruby 1.9 版本的。
p Hash[hsh.sort_by{|k, v| v[0]}]
# => {"c1"=>[11, 33], "c9"=>[23, 7], "c2"=>[44, 2]}
p Hash[hsh.sort_by{|k, v| v[1]}]
# => {"c2"=>[44, 2], "c9"=>[23, 7], "c1"=>[11, 33]}