【问题标题】:Need to understand hash of hashes in ruby [closed]需要了解 ruby​​ 中的哈希值 [关闭]
【发布时间】:2016-10-07 08:37:55
【问题描述】:

我知道我们可以创建如下哈希的哈希:

Hash.new{|hash, key| hash[key] = Hash.new}

但我不明白键和值是否被转换为哈希。有人可以简要解释一下吗?

【问题讨论】:

  • 你可以查一些docs
  • 我不明白你的问题。你有什么不明白的?

标签: ruby hash


【解决方案1】:

如果你以这种方式定义hash,ruby 会将 hash 中每个键的默认值设置为新的 hash 并保存。

样本

h = Hash.new{|hash, key| hash[key] = Hash.new}

h[:foo]
# => {}
p h
# => {:foo=>{}}

只定义默认值

h = Hash.new({})

h[:foo]
# => {}
p h
# => {}

【讨论】:

  • 谢谢!现在我明白了
猜你喜欢
  • 2014-04-12
  • 2022-01-10
  • 2013-09-30
  • 2017-06-10
  • 2014-04-14
  • 2014-03-02
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多