Действительно ли это - ошибка в методе Array.fill в Ruby? [дубликат]

5
задан the Tin Man 22 March 2016 в 17:48
поделиться

2 ответа

Array.new (3, Array.new (3)) возвращает массив, который содержит один и тот же массив трижды (другими словами: вычисляется выражение Array.new (3) ровно один раз и копии не делаются).

Вам, вероятно, понадобится Array.new (3) {Array.new (3)} , который оценивает Array.new (3) три раза и, таким образом, дает вам массив из трех независимых массивов.

9
ответ дан 14 December 2019 в 01:00
поделиться

Правильно, Array.new (array) возвращает новый массив, созданный с копиями размера obj (то есть ссылками размера на тот же объект obj)

0
ответ дан 14 December 2019 в 01:00
поделиться
Другие вопросы по тегам:

Похожие вопросы: