**
object partion
//用case定義偏函式
val div3:partialfunction[
int,
int]
=val res:partialfunction[
int,
string]=
//組合多個偏函式
val r1:partialfunction[
int,
string]=
val r2:partialfunction[
int,
string]=
val r3:partialfunction[
int,
string]=
//res2傳入乙個int型別引數進行匹配
val res2=r1 orelse r2 orelse r3
//連線操作,連線r4和r5
val r4:partialfunction[
int,
string]=
val r5:partialfunction[
string
,string]=
//傳int型別然後得到r4返回的string型別,最後判斷是否符合r5的字串
val res3:
(int
=>
string
)=r4 andthen(r5)
def main(args: array[
string])
:unit
=}
執行結果
false
true500
true
three
other
true
onethe num is 1
process finished with exit code 0
scala之偏函式
只對於偏愛的值進行處理,其他值不進行處理 val list1 list 1,2,3,a true 實現 partialfunction 輸入型別,輸出型別 val f new partialfunction any,int 偏函式使用 val result list1.collect f print...
Scala部分函式 偏函式
例如 def sum x int,y int,z int x y z,當呼叫sum的時候,如果不提供所有的引數,或者只提供某些引數時,比如sum sum 3,int,int sum int,3,4 這樣就生成了所謂的部分應用函式。案例 def showmsg title string content...
scala中的偏函式
case語句 組合 除了可以被編譯為匿名函式 型別是functionx,在scala裡,所有的函式字面量都是乙個物件,這個物件的型別是functionx 還可以非常方便的編譯為乙個偏函式partialfunction!注意 partialfunction同時是function1的子類 編譯器會根據呼...