Igg*_*ggy 0 ruby recursion function
如何在Ruby中调用"多重递归函数",将函数作为一个参数一遍又一遍?
由此,我不是指通常的递归函数,如斐波那契序列.假设我有一个叫做的函数hey().它"Hey"在函数内调用函数时打印字符串的次数.澄清:
hey() #=> "Hey "
hey(hey()) #=> "Hey Hey "
hey(hey(hey())) #=> "Hey Hey Hey "
Run Code Online (Sandbox Code Playgroud)
我试过了
def hey(*args)
"Hey "
end
def hey(*args)
"Hey " + hey(*args)
end
def hey(n)
"Hey " + hey(n)
end
Run Code Online (Sandbox Code Playgroud)
我以前从未见过这样的例子.我知道这是可行的,但不知道如何.是*args需要吗?我需要传递常规参数而不是*args吗?
这是你在找什么?
def hey(str="")
"Hey " + str
end
p hey(hey(hey())) # "Hey Hey Hey "
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
41 次 |
| 最近记录: |