0
我想返回一個數組,該數組正方形上的每個元素,但是我得到以下錯誤?NoMethodError:未定義的方法' - '爲零:NilClass
1) #square_array should square the elements in an array
Failure/Error: expect(square_array([9,10,16,25])).to eq([81,100,256,625])
NoMethodError:
undefined method `-' for nil:NilClass
# ./square_array.rb:3:in `block in square_array'
# ./square_array.rb:2:in `each'
# ./square_array.rb:2:in `square_array'
# ./spec/square_array_spec.rb:19:in `block (2 levels) in <top (required)>'
Finished in 0.03363 seconds (files took 0.30161 seconds to load)
但是這個問題只在雙數數字時纔會引發,下面的Ruby代碼與數組= [1,2,3]一起工作。爲什麼它不適用於雙位數字?
def square_array(array)
array.each do |x|
array[x-1] = x ** 2
end
end
我被要求使用。每個方法「實踐遍歷的數組使用.each方法。「 –
非常感謝你的工作。 @ M.karim –
我該如何接受它?即時消息品牌全新對此@ M.karim –