Я хочу пройти через простой хэш, показывая значение для каждой пары ключ-значение, и дать пользователю возможность обновить это значение. Важно отметить, что если пользователь просто нажимает ввод и не предоставляет новое значение, старое значение должно сохраниться. Вот мой пример кода, который работает, но не выглядит особенно Ruby-idiomatic:
mydata = {"key1" => "value1", "key2" => "value2", "key3" => "value3"}
newdata = {}
mydata.each do |k, v|
puts "current value is " + v.to_s
input = gets.chomp
if input.length == 0
newdata[k] = mydata[k]
else
newdata[k] = input
end
end
puts mydata
puts newdata