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的建議改變輸入內容,那將更有意義。 –