sort
我通常使用下面示例中给出的非常著名的方法对 ruby 哈希进行排序。但是当字符串键中有下划线时,这非常失败。例如:
h = {"b" => 1, "a" => 2}
Hash[h.sort]
完美地对哈希进行排序。但是当哈希类似于
h = {"b_d" => 1, "a_v" => 2}
我没有得到所需的排序顺序。这里要注意的一点是h.sort
对哈希进行排序并生成一个Enumerable
对象。但是当我使用 将对象转换回 Hash 时Hash[h.sort]
,它会丢失这里的顺序。任何有关更好流程的建议都可能会有所帮助。
注意:我正在使用Ruby 1.8.7
,所以OrderedHash
我的镜头中没有太多。