我正在做 Code Academy The Refactor Factory: Less is More (Exercise 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)