偏函式部分應用函式也稱部分函式。當在呼叫乙個函式時,把這個函式應用到引數中。 如果您傳遞所有預期的引數,則表示您已完全應用它。 如果只傳遞幾個引數並不是全部引數,那麼將返回部分應用的函式。這樣就可以方便地繫結一些引數,其餘的引數可稍後填寫補上。
object test
showmsg
("警告"
,"當前水位",12
) val title=
"提醒"
def showwateralter=
showmsg
(title,_:string,_:int)
showwateralter
("現在水位",20)}}
結果展示:
偏函式是只對函式定義域的乙個子集進行定義的函式
partialfunction[-a,+b]是乙個特質
//自定義偏函式
val inc =
newpartialfunction
[any, int]
list(1
,2,3
,"four").
collect
(inc)
case語句
val pf:partialfunction[any, int]
=//返回乙個偏函式
list(1
,2,3
,"four").
collect
(pf)
//輸出list(2,3,4)
object test
val num1=
funpartional
("hello"
) val num2=
funpartional
("world"
) val num3=
funpartional
("gree"
)println
(num1)
println
(num2)
println
(num3)
val words=
list
("hello"
,"world"
,"gree"
,"kn09"
) val ints:list[int]
=words.
collect
(funpartional)
words.
collect
(funpartional)
.foreach
(print)
//等同於
words collect funpartional foreach print
def funtest:partialfunction[string,int]
= val ***s=
list
("male"
,"female"
,"female"
,"女"
,"男"
,"male"
,"f"
,"m"
,"f"
,"男男"
) ***s.
collect
(funtest)
.foreach
(print)
}}
結果展示:
大資料課程 scala部分
1.foldleft,初始值是0,0 2,然後作為初始值 再繼續進行累加。2.伴生類中private 定義的變數,只能在伴生物件中訪問,在別的地方訪問需要在伴生類中定義獲取的方法。3.偏函式 由 和裡面的case組成,並且沒有match,第乙個引數是傳入引數,第二個引數是返回值。4.隱式轉換 5.泛...
scala 部分應用函式與偏函式
部分應用函式 是指乙個函式有n個引數,而我們為其提供少於n個引數,那就得到了乙個部分應用函式.def sum a int,b int,c int a b c 那麼就可以從這個函式衍生出乙個偏函式是這樣的 def p sum sum 1,int,int 於是就可以這樣呼叫p sum 2,3 相當於呼叫...
scala中的部分應用函式和偏函式的區別
本人總結如下 偏函式是只對函式定義域的乙個子集進行定義的函式。scala中用scala.partialfunction t,s 類來表示 比如定義了乙個函式 def sum x int y int x y,當呼叫sum的時候,如果不提供所有的引數或某些引數還未知時,比如sum sum 3 int s...