我正在Ruby中尝试数组。我无法访问最大嵌套数组计数。实例实验如下:
array = [[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[[]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]
那个么,你们知道Ruby中数组的维数限制吗?
限制是在内存不足时。
根据HunterMcMillen的评论,你可以这样测试它:
# Warning: be prepared for a sad computer!
depth=0; arr=[]; a=arr
begin
while true do
b = []
a.push(b)
a = b
depth += 1
end
rescue => e
puts "OK: depth=#{depth}, error=#{e} (#{e.class})"
end
大概在某个时候,它会引发一些错误(例如内存不足),您会看到您能够嵌套多少个数组。