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 –