当前位置 : 主页 > 编程语言 > ruby >

在ruby`all`方法中使用`return`

来源:互联网 收集:自由互联 发布时间:2021-06-23
我正在尝试创建一个代码,当我键入搜索名称时,它会搜索并返回其数组位置.以下代码有效(‘Ned’正确显示值1): array1 = ['Lucky', 'Ned', "Dusty'"]counter = 0name = 'Ned'array1.each do |lookup| if lookup
我正在尝试创建一个代码,当我键入搜索名称时,它会搜索并返回其数组位置.以下代码有效(‘Ned’正确显示值1):

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.
网友评论