这个Ruby语法是什么?

这个Ruby语法是什么?,ruby,Ruby,我最近遇到了如下代码: next { 'foo' => bar, 'foobar' => anotherbar, } 起初它看起来像一个简单的散列,但并没有分配给下一个。本例中的下一个类似于保留的Ruby关键字。这段代码的作用是什么?下一步类似于c语言家族中的continue关键字,只是在ruby中它使迭代器移动到下一个迭代。由于块总是有某种类型的返回值,所以可以选择将一个作为参数传递给下一个 下一步通

我最近遇到了如下代码:

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

起初它看起来像一个简单的散列,但并没有分配给下一个。本例中的下一个类似于保留的Ruby关键字。这段代码的作用是什么?

下一步类似于c语言家族中的continue关键字,只是在ruby中它使迭代器移动到下一个迭代。由于块总是有某种类型的返回值,所以可以选择将一个作为参数传递给下一个

下一步通常用于迭代文件列表和根据文件名采取行动(或不采取行动)等情况

接下来可以获取一个值,该值将是块的当前迭代返回的值

  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"]

from

next使循环停止当前迭代并跳到下一个迭代,但我不知道它后面的散列是什么意思。