Так что проблема, с которой я столкнулась, заключается в понимании разницы между = self
и = self dup
. Когда я запускаю код ниже любого массива, который я вставляю в него, он постоянно изменяется.В чем разница между «input = self» и «input = self.dup»
class Array
def pad(min_size, value = nil)
input = self
counter = min_size.to_i - self.length.to_i
counter.times do
input.push(value)
end
input
end
end
Но потом я заметил, если я ставлю input = self.dup
не будет постоянно менять свой массив. Может кто-нибудь объяснить, почему? Благодаря!
class Array
def pad(min_size, value = nil)
input = self.dup
counter = min_size.to_i - self.length.to_i
counter.times do
input.push(value)
end
input
end
end
вы можете добавить какой язык вы используете к тег или название? –
Я предполагаю, что это Рубин ... Просто не добавляй его в заголовок. Отдохните, пожалуйста! –