加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 综合聚焦 > 服务器 > 安全 > 正文

Scala总函数作为部分函数

发布时间:2020-12-16 09:00:40 所属栏目:安全 来源:网络整理
导读:由于总函数是部分函数的特例,我想我应该能够在需要部分函数时返回一个函数. 例如, def partial : PartialFunction[Any,Any] = any = any 当然这种语法无法编译.我的问题是,是否可以这样做,如果是这样,我需要做什么才能使语法正确. 我知道我可以做到以下几点,
由于总函数是部分函数的特例,我想我应该能够在需要部分函数时返回一个函数.

例如,

def partial : PartialFunction[Any,Any] = any => any

当然这种语法无法编译.我的问题是,是否可以这样做,如果是这样,我需要做什么才能使语法正确.

我知道我可以做到以下几点,但这只是一个过于好奇的问题

def partial : PartialFunction[Any,Any] = {
  case any => any
}

解决方法

您可以使用PartialFunction.apply方法:

val partial = PartialFunction[Any,Any]{ any => any }

如果要缩短此方法,可以导入此方法:

import PartialFunction.{apply => pf}
val partial = pf[Any,Any]{ any => any }

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读