Ruby 允许您定义散列的默认值:
h=Hash.new(['alright'])
h['meh'] # => ["alright"]
显示哈希时会显示值的分配,但修改后的默认值不会。在哪里'bad'
?
h['good']=['fine','dandy']
h['bad'].push('unhappy')
h # => {"good"=>["fine", "dandy"]}
'bad'
如果我们明确询问,就会出现。
h['bad'] # => ["alright", "unhappy"]
为什么显示哈希时不显示修改后的默认值?