要素にアクセスするための独自のメソッドを次のように定義しました。
class Array2
def [](key)
if key.kind_of?(Integer)
@elements[key]
else
# ...
end
end
end
以前にとして宣言@elements
した場合はArray.new
、両方の操作:
list = Array2.new
# ...
puts list[0]
puts list.[](0)
正しく機能します。なぜ最初の操作が受け入れられるのですか?