cch*_*son 5 scala function-composition
比方说我有一个功能move
.
现在,根据一些输入(假设输入显示"Move by 3"),我必须移动3次.
我会这样做:
move compose move compose move
Run Code Online (Sandbox Code Playgroud)
是否可以动态地进行功能组合?这样我就可以根据我必须移动的次数来构建我的新函数.
谢谢
Mar*_*rth 11
你可以使用这个Function.chain
方法:
scala> val move1 = (x:Int) => x+1
move1: Int => Int = <function1>
scala> val move5 = Function.chain(List.fill(5)(move1))
move5: Int => Int = <function1>
scala> move5(5)
res1: Int = 10
Run Code Online (Sandbox Code Playgroud)