我被哈希对象的排序方法所采用的排序算法所困扰。我有一个带有以下键值的哈希值,它们都是浮点数。
0
0.0113867473179591
103.77896959717717
2.039453159239391
99.99575298164214
这些是我使用map_values.values.sort()时得到的值。我不明白为什么103.778 ....在2.0394之前......
答案 0 :(得分:2)
您的值是字符串吗?处理字符串时,这种排序很有意义。如果要按浮点值排序,则应将字符串转换为浮点数。
map_values.values.map(&:to_f).sort