我如何用一行代码创建三个空哈希值?
我知道 a = b = c = Hash.new
不会工作,因为它会创建对同一个 Hash 对象的三个引用。
a,b,c = Hash.new
会将 Hash
分配给 a
,但是 b
和c
保持 nil
。
我知道我可以做 a, b, c = Hash.new, Hash.new, Hash.new
,但这看起来不太干。
最佳答案
正如我作为评论发布的那样,我认为 a, b, c = {}, {}, {}
是最好的方式,因为它简短且易于阅读。如果你真的想以更复杂的方式来做,像这样的东西会起作用:
>> a, b, c = Array.new(3) { Hash.new } #=> [{}, {}, {}]
>> a #=> {}
>> b #=> {}
>> c #=> {}
关于ruby - 如何用一行代码创建三个对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6401466/