如何在Ruby中使用不同的object_id初始化对象?

sha*_*_ru 0 ruby initialization

如果我初始化具有赋值的对象 a = b = c = []

那么这个变量有相同的object_ids: a.object_id == b.object_id == c.object_id

我也尝试过:

[a, b, c].map {|e| e = [] }

a, b, c = Array.new(3, [])

a, b, c = Array.new(3, Array.new)
Run Code Online (Sandbox Code Playgroud)

但它不会使用不同的 object_id 初始化a,b,c变量

有没有办法用不同的对象id初始化变量a,b,c但具有相同的值== []?

How*_*ard 8

这些可能的解决方案如何:

a,b,c=[],[],[]
a,b,c=(0..2).map{[]}
a,b,c=Array.new(3){[]}
Run Code Online (Sandbox Code Playgroud)