是否可以在 Ruby 中执行以下操作?
hash = {:person => {:name => 'Bob', :age => 33}}
hash[:person] do |person|
person[:name] = 'Alice'
puts "Here, have a beer #{person[:name]}" if person[:age]> 17
end
我试图避免的是像这样写
hash[:person][:name] = 'Alice'
puts "Here, have a beer #{hash[:person][:name]}" if hash[:person][:age] > 17
编辑:我的第一个例子可能有点不清楚。我希望能够在块中执行一些代码,而不仅仅是更新值。