坚持使用Ruby代码学院

时间:2013-09-21 07:55:27

标签: ruby

我在做Code Academy The Refactor Factory:Less is More(练习4)模块。以下是该模块的说明:

  

少即是多好工作!这段代码看起来已经很好了。

     

然而,我们可以删除更多。回想一下Ruby会隐式地   (即自动)返回最后一个表达式的值   评估。我们可以在此代码中有一个return语句   从显性变为隐式!

     

说明找到不必要的return语句并将其删除。

     

提示:这是最后一个!这是因为我们可能想早点回来   如果输入不是正数,我们不能提前返回,除非   我们明确使用了return关键字。

我尝试删除最后一个return语句和其他每个语句,但我收到错误。任何人都可以提出任何建议吗?

$VERBOSE = nil    # We'll explain this at the end of the lesson.
require 'prime'   # This is a module. We'll cover these soon!

def first_n_primes(n)

  return "n must be an integer." unless n.is_a? Integer

  return "n must be greater than 0." if n <= 0

  prime_array ||= []

  prime = Prime.new
  for num in (1..n)
    prime_array.push(prime.next)
  end
  return prime_array
end

first_n_primes(10)

1 个答案:

答案 0 :(得分:0)

return移除return prime_array应该有效。