【问题标题】:Ruby. (condition) ? return : next .Returning error红宝石。 (健康)状况) ?返回:下一个。返回错误
【发布时间】:2023-03-11 11:21:01
【问题描述】:
(1<2) ? return : next

dos.rb: dos.rb:74: 下一个无效 (SyntaxError)

在这种情况下告诉 ruby​​ '继续'的正确方法是什么。

如果1小于2,退出函数,否则继续

【问题讨论】:

  • 如果您发送整个循环方法将有助于解决您的问题!
  • return if i &lt; 2if i &lt; 2; return; end。 (..if 1 &lt; 2 不是最好的例子,因为它总是true)。

标签: ruby if-statement next


【解决方案1】:

你可以说:

return if (1 < 2)

你不必告诉 Ruby “继续”——如果它没有从函数中返回,它就会这样做!

【讨论】:

    【解决方案2】:

    return 从方法或 lambda 返回,next 从块返回。您的代码中既没有方法,也没有 lambda,也没有块,因此 returnnext 在您的代码中均无效。

    【讨论】:

    • 虽然顶级 return 存在于较新的 Ruby 版本中。
    【解决方案3】:

    只需使用 if 而不是三元组,并确保您处于 next 有效的上下文(例如循环)中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2015-08-03
      • 1970-01-01
      • 2011-02-19
      • 2022-01-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多