协慌网

登录 贡献 社区

等效于 Ruby 中的 “continue”

在 C 语言和许多其他语言中,有一个continue关键字,当在循环内使用时,跳转到循环的下一个迭代。在 Ruby 中,是否有任何等效的continue

答案

是的,它称为next

for i in 0..5
   if i < 2
     next
   end
   puts "Value of local variable is #{i}"
end

这将输出以下内容:

Value of local variable is 2
Value of local variable is 3
Value of local variable is 4
Value of local variable is 5
 => 0..5

next

另外,请看一下redo ,它重做当前迭代。

以稍微惯用的方式写伊恩 · 普顿(Ian Purton)的答案:

(1..5).each do |x|
  next if x < 2
  puts x
end

印刷:

2
  3
  4
  5