gpt4 book ai didi

ruby - 在 ruby​​ `return` 方法中使用 `each`

转载 作者:数据小太阳 更新时间:2023-10-29 07:47:37 24 4
gpt4 key购买 nike

我正在尝试创建一个代码,在我键入搜索名称时进行搜索并返回其数组位置。以下代码有效('Ned' 正确显示 1 的值):

array1 = ['Lucky', 'Ned', "Dusty'"]
counter = 0

name = 'Ned'
array1.each do |lookup|
if lookup == name
puts counter
end
counter += 1
end

但是,当我使用 return counter 代替 puts counter 时,代码返回错误。这是错误代码:

unexpected return
(repl):7:in `block in initialize'
(repl):5:in `each'
(repl):5:in `initialize'

我不明白为什么它说initialize。我不明白为什么它适用于 puts 而不适用于 return。有人会解释为什么它在成功打印时不能返回值吗?

最佳答案

因为 return 是一种从方法(定义) 中转义的方法。您在任何地方都没有方法定义。为此,您可以使用 break

关于ruby - 在 ruby​​ `return` 方法中使用 `each`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34984424/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com