我对Ruby很陌生。我需要扩展Array,我需要我的类来表示二维数组。
我已经这样做了:
class MyExtension < Array
    def initialize(n)
        super(n, Array.new(n, nil))
        self[0][0] = "hello"
    end
end
这在理论上看起来对我来说是正确的,但是当我这样做时:
p MyExtension.new(2)
我明白了
[["hello", nil], ["hello", nil]]
而不是预期的:
[["hello", nil], [nil, nil]]
我怎么了?