我有一个问题需要解决,有一个简单的超市程序,所有项目都按照散列(密钥:产品ID)进行排序和存储,其中包含价格,制造商,到期等价值。 出于某种目的,我需要根据价格对物品进行分组 我需要创建一个包含另一个哈希(键控:产品ID)的哈希(键控:价格)。
代码是这样的:
new_Hash = Hash.new(Hash.new)
items = Hash.new
SuperMarket_hash.each { |Product_ID, info | new_Hash[info.PRICE].items[Product_ID] }
我收到此代码的错误。 (items:NillClass no method error)
答案 0 :(得分:3)
使用活跃的哈希,如“Dynamically creating a multi-dimensional hash in Ruby”
中所示或使用group_by
。