我收到以下錯誤,當我從我的RSpec的文件中運行我的代碼:紅寶石填充的陣列
pad pads element to the end of an array
Failure/Error: expect(pad(array,array.length + pad_size, 'apple')).to eq(array+Array.new(pad_size, 'apple'))
expected: ["apple", "apple", "apple",...]
我當前的代碼是:
def pad!(array, min_size, value = nil) #destructive
difference = min_size-array.length
difference.times {array << value}
array
end
def pad(array, min_size, value = nil) #non-destructive
difference = min_size-array.length
difference.times {array << value}
array.clone
end
誰能幫助我弄清楚爲什麼它給我這個錯誤信息?我認爲{array < < value}在我的數組輸入結尾添加了新的元素。謝謝!
你還可以給出輸入數據數組,以便我可以運行和調試? –
你的'new_array = array.clone'應該上去。 –