消息关闭
    暂无新消息!

我又来了@-偏函数的问题

问题作者 : 安宁2017-06-06发布

1,scala中函数的定义如下
def main(args:Array[String]):Unit={

}

对于偏函数的定义如下:
Scala提供了定义偏函数(PartialFunction)的语法快捷:
val pf: PartialFunction[Int, String] = {
case i if i%2 == 0 => "even"
}

上面的pf可以理解为函数的名称,,因为函数名称后面没有参数,所以说是一个无参函数

PartialFunction[Int,String]理解为函数的返回类型,然后花括号内是函数体,这个理解正确吗?

那么现在的问题是如果上面的理解是正确的,为什么在函数体中看不出函数的返回类型PartialFunction[Int,String],
这个PartialFunction[Int,String] 应该怎们理解??

问题2,
react {

    case "case1" => {
       exec
    }
    case "case2" => {
     exec
    }
 }
 
 这个react是一个偏函数吗? 对比上面的偏函数的定义 ,怎么分析他的结构呀
 
 
 求指点,,

2个回答

︿ 1

PartialFunction[Int,String] 是整个函数的类型。意思是:

接受一个Int参数,返回String。但可能对一些Int没有返回值 (即"偏")。