首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >PartialFunction orElse的效率

PartialFunction orElse的效率
EN

Stack Overflow用户
提问于 2012-02-28 14:40:13
回答 2查看 380关注 0票数 6

与在apply时间内使用大型match块相比,使用PartialFunctionorElse效率是高还是低?

要说明该问题,请执行以下操作:

代码语言:javascript
复制
val pf = { case "a" => "A"} orElse 
         { case "b" => "B" } orElse 
         { case "c" => "C" } ...

或多或少比…更有效:

代码语言:javascript
复制
val pf = { case "a" => "A"
  case "b" => "B"
  case "c" => "C"
  ...
}

在应用程序期间,将值设置为pf

代码语言:javascript
复制
pf(x)
EN

回答 2

Stack Overflow用户

发布于 2012-02-28 15:25:13

请参阅unfiltered的作者提供的此detailed analysis。基本上,它的效率较低。我相信在博客帖子发布后不久,some work已经在主干中解决了这个问题。

票数 5
EN

Stack Overflow用户

发布于 2012-02-28 22:25:35

第二种情况的效率不可能低于第一种情况,因为编译器可以直接将其转换为第一种情况(实际上,这与虚拟模式匹配器所做的工作并不遥远)。

因此,如果你有选择,第二种情况总是更安全的选择。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/9477533

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档