部分应用函数
部分应用函数(Partial Applied Function)是缺少部分参数的函数。
例:
object Function{
def main(args:Array[String]):Unit={
def add(a:Int,b:Int,c:Int):Int={
a+b+c
}
def sumadd=add(1,_:Int,_:Int)
println(sumadd(2,3))
}
}
运行结果
6
偏函数
- 偏函数是只对函数定义域的一个子集进行定义的函数
- PartialFunction[-A,+B]是一个特质
A为函数定义域,B为偏函数返回值类型
def funPartional:PartialFunction[String,Int]={
case "hello"=>1
case "world"=>2
case _=>0
}
val worlds =List("hello","world","gree","kb09")
worlds.collect(funPartional).foreach(println)
//worlds collect funPartional foreach println
运行结果
1
2
0
0