我正在學習一些紅寶石哈希操作。代碼是關於增加每個項目的價格10%。爲什麼這個代碼不工作?爲什麼不按預期工作這個紅寶石代碼?
restaurant_menu = { "Ramen" => 3, "Dal Makhani" => 4, "Coffee" => 2 }
restaurant_menu.each do |item, price|
price = price + (price * 0.1)
end
,而這一個作用:
restaurant_menu = { "Ramen" => 3, "Dal Makhani" => 4, "Coffee" => 2 }
restaurant_menu.each do |item, price|
restaurant_menu[item] = price + (price * 0.1)
end
而且任何理由,爲什麼後者是一種更好的方式來做到這一點比前由@Mike Manfrin解釋呢?
另一個Ruby問題是由於誤解了對象變異的作用而產生的。 – Ajedi32
你可以解釋或給一些鏈接,所以我可以理解Ruby中的對象變異。我想回答這個問題,然後回答。@ Ajedi32 –
這實際上就是我爲什麼提到它的原因;我不知道解釋這個概念的典型來源。 – Ajedi32