-
引用透明: 對于相同的輸入,總是得到相同的輸出,
append違反引用透明
不變性:為了獲得引用透明性,任何值都不能變化
查看全部 -
XplusY_V1就是一個純函數
查看全部 -
函數式變成:避免改變狀態和可變的數據
純函數(函數的純粹性,沒有副作用):
查看全部 -
不錯查看全部
-
查看全部
-
隨堂筆記--
查看全部 -
元組tuple
查看全部 -
整數列:range
查看全部 -
隨堂筆記--
查看全部 -
map也是個函數
查看全部 -
高階函數
1、filter
查看全部 -
集合有三大類:set、sequence、map
查看全部 -
隨堂筆記--
查看全部 -
object?sumfunc?{ ????def?sum(f:Int?=>?Int)(a:Int)(b:Int):Int?=?{ [email protected] ????????def?loop(n:Int,?acc:Int):?Int={ ????????????if?(n>b){ ????????????????println(s"n=${n},?acc=${acc}") ????????????????acc ????????????????}?else{ ????????????????????println(s"n=${n},?acc=${acc}") ????????????????????loop(n+1,?acc+f(n)) ????????????????} ????????????} ????????????loop(a,0) } sum(x?=>?x)(1)(5) sum(x?=>?x*x)(1)(5) sum(x?=>?x*x*x)(1)(5) val?sumSquare?=?sum(x?=>?x*x)_ sumSquare(1)(5)
查看全部 -
函數式編程中沒有循環語句,所有循環都是通過遞歸來實現
def?factorial(n:?Int):?Int?=? ????if?(n?<=?0)?1 ????else?n?*?factorial(n-1)
容易堆棧溢出,優化==>
@annotation.tailrec def?factorial(n:Int,?m:Int):?Int= ????if?(n?<=?0)?m ????else?factorial(n-1,?m*n) factorial(5,1)
僅保存當前最新
查看全部
舉報
0/150
提交
取消