gpt4 book ai didi

ruby - 按包含值的长度对散列进行排序

转载 作者:数据小太阳 更新时间:2023-10-29 07:02:15 27 4
gpt4 key购买 nike

假设我有一个像这样的散列:

foo = {
:bar => ['r', 'baz'], # has a total str length of 4 characters inside of the array
:baz => ['words', 'etc', 'long words'] # has a total str length of 18 characters inside of the array,
:blah => ['at'] # has a total str length of 2 characters inside of the array
# etc...
}

我将如何根据数组中包含的项目的总字符串长度对这个散列进行排序?在这种情况下生成的哈希顺序应该是::blah, :bar, :baz

最佳答案

我会这样做:

Hash[foo.sort_by { |k, v| v.join.length }]

我假设您不打算更改原始哈希值,只是重新排序它们。

关于ruby - 按包含值的长度对散列进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10957012/

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