gpt4 book ai didi

ruby - 这个 Ruby 语法是什么?

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

我最近遇到了如下代码:

 next {
'foo' => bar,
'foobar' => anotherbar,
}

一开始它看起来像一个简单的散列,但是没有赋值给next。 Next 在这种情况下看起来像一个保留的 Ruby 关键字。这段代码有什么作用?

最佳答案

next 类似于 c 语言系列中的 continue 关键字,除了在 r​​uby​​ 中它使迭代器移动到下一个迭代。由于 block 总是有某种返回值,您可以选择将一个作为参数传递给下一个。

next 通常用于遍历文件列表并根据文件名采取(或不采取)行动等情况。

next 可以取一个值,该值将是 block 当前迭代的返回值。

  sizes = [0,1,2,3,4].map do |n|
next("big") if n > 2
puts "Small number detected!"
"small"
end

p sizes

Output:

Small number detected!
Small number detected!
Small number detected!
["small", "small", "small", "big", "big"]

来自 http://ruby-doc.org/docs/keywords/1.9/

关于ruby - 这个 Ruby 语法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3286843/

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