Я работаю над изучением некоторых операций Хэша в рубине. Код - это увеличение цены каждого предмета на 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
И никаких причин, почему последняя является лучшим способом сделать это, чем прежний, как объяснено Manfrin @ Mike?
Еще один вопрос Ruby, возникающий из-за непонимания того, как работает мутация объекта. – Ajedi32
Можете ли вы объяснить или дать некоторые ссылки, чтобы я мог понять мутацию объекта в ruby.I хочу закрыть этот вопрос, как тогда было задано. @ Ajedi32 –
Вот на самом деле я почему-то упоминал об этом; Я не знаю канонического источника, объясняющего эту концепцию. – Ajedi32