我是一个红宝石初学者,我正在尝试创建一个名为print的方法来打印给定数组中的所有元素。我希望我的代码获得一个未定义的局部变量错误。
这是我从Youtube那里得到的。这给出了一个未定义的局部变量错误。
movies = ["good","bad"]
def good_movies
movies.each do |movies|
puts "I like #{movie}"
end
end
good_movies
我正在使用交互式Ruby。这是我的版本。
numbers = [1,2,3]
def print
numbers.each do |number|
puts "#{number}"
end
end
print
我收到错误:(irb):2:在'print'中:参数数量错误(给定4,预期为0)(ArgumentError)。为什么我得到这个,而不是未定义的局部变量错误?
发生了什么事?
答案 0 :(得分:3)
你必须传递一个参数'数字"到print
方法。
numbers = [1,2,3]
def print(nums)
nums.each do |number|
puts number
end
end
然后:
print(numbers)