能夠接受函式作為引數的函式,叫做高階函式
(higher-order function)。可使應用程式更加健壯。
object higherorderfunction
//sum 是接收乙個 double,返回乙個 double
def sum
(d: double)
: double =
def mod
(d: double)
: int =
val res =
test
(sum, mod,
5.0)
// println
("res="
+ res)
// 2.0
}}
高階函式可以返回函式型別
object higherorderfunction2
//分步執行
//f1 就是 (y:int)=>3-y
val f1 =
minusxy(3
)println
("f1 的型別="
+ f1)
println(f1
(1))
// 2
println(f1
(9))
// -6
//也可以一步到位的呼叫
println
(minusxy(4
)(9)
)// -5
}}
Scala之高階函式
第乙個高階函式 def formatresult name string,n int,f int int formatresult是乙個高階函式,他接受乙個函式f為引數,引數的型別是int int,表示接受整型並返回乙個整型結果。多態函式 通常,在寫高階函式時,希望寫出的 能夠適用於任何型別,它們被...
Scala之高階函式
scala混合了物件導向和函式式的特性,我們通常將可以做為引數傳遞到方法中的表示式叫做函式。在函式式程式語言中,函式是 頭等公民 高階函式包含 作為值的函式 匿名函式 閉包 柯里化等等。閉包 就是能讀取其他函式 方法 內部的函式 方法 object closurerest sumf def main...
Python之高階函式
一 什麼是高階函式 函式作為實參傳遞給函式的或者函式名為返回值的函式稱為高階函式。1 實參傳遞給函式 2 函式名為返回值 二 系統內建的高階函式 1 map函式 至少需要兩個引數,第乙個引數是函式名,第二個引數是序列 str,list,tuple map功能 把序列中的每乙個元素作為引數,傳給函式進...