谁能弄清楚这是如何工作的?
frequencies = frequencies.sort_by { |a, b| b}
我知道它改变了散列的显示顺序,但我不知道它是怎么做的。
任何帮助表示赞赏。
Enumerable#sort_by根据给定块的返回值进行排序。从你的例子来看,frequencies
看起来像一个哈希。
这是一个关于哈希的 sort_by 示例
h = {:a => 2, :b => 1, :c => 4}
#=> {:a=>2, :b=>1, :c=>4}
h.sort_by {|k, v| v}
#=> [[:b, 1], [:a, 2], [:c, 4]]