Scala
chenxiaokang97
目标设到月球,即使失败,也能落到众星之间。
展开
-
尾递归消除
尾调用使用循环方式 def factorial(n: Int): Int = { def go(n: Int, acc: Int): Int = { if (n <= 0) acc else go(n - 1, n * acc) } go(n, 1) }想不通过修改一个循环变量而实现循环功能,可以借助递归函数。我们在阶...原创 2018-07-29 18:02:20 · 1606 阅读 · 0 评论 -
HOF高阶函数
HOF高阶函数函数也是值,就像其他类型的值,比如整形、字符串、列表;函数也可以赋值给一个变量、存储在一个数据结构里、像参数一样传递给另一个函数。 把一个函数当做参数传递给另一个函数在纯函数式编程里很有用,它被称为高阶函数(higher-order function,HOF)。import scala.annotation.tailrecobject Hof { de...原创 2018-07-29 18:18:47 · 1012 阅读 · 0 评论