如果存在,则如何重命名哈希中的密钥

Raz*_*zer 4 ruby hashtable hashmap

我有以下哈希:

a = {
  foo: 'bar',
  answer: '42'
}
Run Code Online (Sandbox Code Playgroud)

如何优雅地将密钥重命名:foo为新密钥:test?如果散列条目:foo不存在,则不应更改散列.

saw*_*awa 10

a[:test] = a.delete(:foo) if a.key?(:foo)
Run Code Online (Sandbox Code Playgroud)