红宝石 – 字典=哈希?

前端之家收集整理的这篇文章主要介绍了红宝石 – 字典=哈希?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
字典基本上只是一个哈希表吗?

还有奖金:在Ruby代码“Hash.new {0}”中,“{0}”是什么?

解决方法

词表,词典和地图常常被同义使用(在数据结构的上下文中).散列表/散列图是一种表/字典/地图.

{0}是一个块(匿名函数),它忽略其参数并返回数字0.当在哈希映射中找不到键时,将调用给予Hash.new的块来生成默认值.

即如果我做h = Hash.new {0},然后h [“不存在的键”],我会返回0,而不是nil(我没有{0}).请注意,在这种情况下,默认值是不可变的,并且不依赖于该键,您不需要使用Hash.new的块形式,您可以使用Hash.new(0)将0设置为默认值值.

猜你在找的Ruby相关文章