gpt4 book ai didi

ruby - 获取按各自键排序的散列值的最佳方法? ( ruby )

转载 作者:太空宇宙 更新时间:2023-11-03 17:27:54 24 4
gpt4 key购买 nike

这是我在 atm 上做的事情:

test = {
'd' => 20,
'b' => 40,
'c' => 30,
'a' => 50,
'e' => 10
}

f = []
test.to_a.sort.each do |e|
f << e[1]
end
puts f.join(' ')

输出:

50 40 30 20 10

是否有更高效/简洁/更好的方法来做到这一点?在有人这么说之前,不,我不能使用数组。 :p

编辑 抱歉,发布了错误的代码。

最佳答案

在您的标题中,您提到您希望获取按各自键排序的数组值。但在您的示例中,您实际上只是对值进行排序,而不考虑键。

如果这是你想要的,只需使用:

test.values.sort

但是如果你想根据键对值进行排序,使用这个:

test.keys.sort.collect {|k| test[k]}

关于ruby - 获取按各自键排序的散列值的最佳方法? ( ruby ),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2705336/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com