我正在尝试创建一个代码,当我键入搜索名称时,它会搜索并返回其数组位置.以下代码有效(‘Ned’正确显示值1): array1 = ['Lucky', 'Ned', "Dusty'"]counter = 0name = 'Ned'array1.each do |lookup| if lookup
array1 = ['Lucky', 'Ned', "Dusty'"] counter = 0 name = 'Ned' array1.each do |lookup| if lookup == name puts counter end counter += 1 end
但是,当我在put计数器的位置使用返回计数器时,代码返回错误.这是错误代码:
unexpected return (repl):7:in `block in initialize' (repl):5:in `each' (repl):5:in `initialize'
我不明白它为什么说初始化.我不明白为什么它适用于put并且不适用于return.有人会解释为什么它在成功打印时无法返回值吗?
因为return是一种逃避方法(定义)的方法.您在任何地方都没有方法定义.您可以为此目的使用break.