Ruby 中 break, next, redo 关键字的作用是什么?

· 约 2 分钟读完 · 第 53 / 199 章

推荐答案

在 Ruby 中,break、next 和 redo 是用于控制循环流程的关键字。它们的作用如下:

  • break:立即终止当前循环,跳出循环体。
  • next:跳过当前迭代的剩余代码,直接进入下一次循环迭代。
  • redo:重新执行当前迭代,不进行条件判断或递增操作。

本题详细解读

break 关键字

break 用于在循环中提前终止循环。当 break 被执行时,程序会立即退出当前循环,继续执行循环之后的代码。

在上面的例子中,当 i 等于 3 时,break 被执行,循环立即终止,因此只输出了 1 和 2。

next 关键字

next 用于跳过当前迭代的剩余代码,直接进入下一次循环迭代。

在这个例子中,当 i 等于 3 时,next 被执行,跳过了 puts i,因此 3 没有被输出。

redo 关键字

redo 用于重新执行当前迭代,而不进行条件判断或递增操作。

在这个例子中,当 i 等于 3 时,redo 被执行,重新执行了 i == 3 的迭代,因此 2 被输出了两次。

总结

  • break:终止循环。
  • next:跳过当前迭代,进入下一次迭代。
  • redo:重新执行当前迭代。