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

Scala参数类型说明

发布时间:2020-12-16 09:49:48 所属栏目:安全 来源:网络整理
导读:我是 Scala和Play Framework的新手,我之前从未见过以下参数类型. def IsAuthenticated(f: = String = Request[AnyContent] = Result) 令我困惑的是f:=部分.如果那个=我不认为它是一个将String映射到Request然后映射到Result的函数. 解决方法 通常,= A是类型
我是 Scala和Play Framework的新手,我之前从未见过以下参数类型.

def IsAuthenticated(f: => String => Request[AnyContent] => Result)

令我困惑的是f:=>部分.如果那个=>我不认为它是一个将String映射到Request然后映射到Result的函数.

解决方法

通常,=> A是类型A的名称参数.这意味着只有在函数体中使用它时(以及何时)才会计算参数.因此,f是一个名称参数,其类型是一个函数,它接受一个String并将一个函数从Request [AnyContent]返回给Result.以下是如何评估名称参数的示例:

scala> def twice[A](a: =>A) = (a,a)
twice: [A](a: => A)(A,A)

scala> var i = 0
i: Int = 0

scala> twice {
     |   i += 1
     |   i
     | }
res0: (Int,Int) = (1,2)

(编辑:李大同)

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

    推荐文章
      热点阅读