使用 Ruby 进行多重排序
Multisort using Ruby
我的数据格式为:
a = [
{
"a_id":101,
"a_value":100000.0,
"a_quantity":360.0
},
{
"a_id":108,
"a_value":110000.0,
"a_quantity":210.0
},
{
"a_id":104,
"a_value":105000.0,
"a_quantity":310.0
}
]
我希望数据按 a_value
的降序排列。我试过:
a.sort_by {|k| k[:a_value] }.reverse
但是没有排序。
你有什么用。只是不要忘记将排序后的集合分配给一个变量(sort_by
和 reverse
不会更改集合)。
奖金:可以说这是一个更好的版本(一次通过,而不是两次)
a.sort_by{ |v| -v[:a_value] }
我的数据格式为:
a = [
{
"a_id":101,
"a_value":100000.0,
"a_quantity":360.0
},
{
"a_id":108,
"a_value":110000.0,
"a_quantity":210.0
},
{
"a_id":104,
"a_value":105000.0,
"a_quantity":310.0
}
]
我希望数据按 a_value
的降序排列。我试过:
a.sort_by {|k| k[:a_value] }.reverse
但是没有排序。
你有什么用。只是不要忘记将排序后的集合分配给一个变量(sort_by
和 reverse
不会更改集合)。
奖金:可以说这是一个更好的版本(一次通过,而不是两次)
a.sort_by{ |v| -v[:a_value] }