0
我有以下哈希简单的方法来找到所有的哈希值与特定值
h = [{:foo=>:bar}, {:qqq=>:ppp}, {:xxx=>123}]
我想找到所有哈希其中Symbol
中值的阵列。
目前我使用这种方法,但我并不喜欢它,因为我必须为每个哈希创建数组并提取第一个元素(hash.values[0]
)。
h.select { |hash| hash.values[0].is_a?(Symbol) }
# => [{:foo=>:bar}, {:qqq=>:ppp}]
也许有这样做更优雅的东西?
感觉怪怪的你只依靠哈希有一个键/值对。为什么不创建专用对象? – apneadiving
你正在寻找什么输出? –
我同意apneadiving。它并没有真正利用Hash能做什么,它们也可能是两个元素的数组。如果您有能力按照@Konstantin的建议改变输入内容,那将更有意义。 –