2012-04-23 272 views
-1

我有一個問題需要解決,有一個簡單的超市計劃,其中所有項目都排序和存儲在散列(關鍵:產品ID),有價值,如價格,製造商,到期等 出於某種目的,我需要根據價格對物品進行分組。
我需要創建一個包含另一個散列(keyed:Product ID)的散列(keyed:price)。紅寶石散列在紅寶石

代碼是這樣的:

new_Hash = Hash.new(Hash.new) 
items = Hash.new 
SuperMarket_hash.each { |Product_ID, info | new_Hash[info.PRICE].items[Product_ID] } 

我此代碼得到錯誤。 (項目:NillClass沒有方法錯誤)

+1

你有什麼錯誤? – 2012-04-23 16:38:56

+0

['Enumerable#group_by'](http://ruby-doc.org/core-1.9.3/Enumerable.html#method-i-group_by)就是你要找的東西。就像'SuperMarket_hash.group_by {| Product_ID,info | info.PRICE}',但你的問題很難理解,所以我不能肯定地說。 – sluukkonen 2012-04-23 16:49:03

回答