# Pastebin pN9Ezear @HCLarsen @Willamin about mapping hash etc. there's no need to create another hash. Simply change values or add new key and delete old key... hsh = {"foo" => "bar", "baz" => "qux"} iterator = hsh.each_key key = iterator.next hsh[key.to_s] = "dfgh" hsh["newKey"] = "new" hsh.delete(key.to_s) key = iterator.next hsh[key.to_s] = "1234" hsh.each do |key, value| puts key puts value end gives: baz 1234 newKey new Sorry, i am on my phone. You can do anything equivalent :)