参数的scala引用值

用户1553248

如果我具有以下类型和功能:

object M {
    type X[Boolean] = Int => Boolean

    def retrieveVal(x: X[Boolean]) : Boolean = //retrieve the Boolean value of x
}

我将如何获取并返回布尔值?

兰德尔·舒尔茨

那是一个特殊的类型别名。它具有一个正式的类型参数(其名称无关紧要,因此对它的选择具有Boolean误导性),用于定义从Int到任意类型的函数然后定义一个方法,retrieveVal即采用一种特殊的X恰好是X[Boolean](这里Boolean是一个实际的类型参数,因此Boolean我们熟悉),并返回一些Boolean但是,x作为参数传递的函数需要一个Int参数,并且没有证据。

因此,如果您retrieveVal的定义是这样的:

def retrieveVal(i: Int, x: X[Boolean]): Boolean = ...

您可以这样定义它:

def retrieveVal(i: Int, x: X[Boolean]): Boolean = x(i)

以机智:

scala> type X[Boolean] = Int => Boolean
defined type alias X

scala> def retrieveVal(i: Int, x: X[Boolean]): Boolean = x(i)
retrieveVal: (i: Int, x: Int => Boolean)Boolean

scala> retrieveVal(23, i => i % 2 == 0)
res0: Boolean = false

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

scala:使用F绑定参数引用特性

来自分类Dev

C ++,函数参数中的右值引用

来自分类Dev

std :: function-值与引用参数

来自分类Dev

传递输入参数作为右值引用?

来自分类Dev

接受对类模板参数的左值和右值引用

来自分类Dev

Scala宏:获取参数默认值

来自分类Dev

Scala中类型参数的默认值

来自分类Dev

Scala - 具有参数化值的枚举

来自分类Dev

类型参数不能在Scala的函数体中引用吗?

来自分类Dev

Scala:引用类的嵌套类型,它是泛型的类型参数

来自分类Dev

右值引用与常量左值引用的C ++模板参数推导

来自分类Dev

我应该通过右值引用返回右值引用参数吗?

来自分类Dev

允许左值引用和不允许右值引用作为函数参数?

来自分类Dev

右值引用和左值引用作为参数之间的差异

来自分类Dev

如何在Scala中分配引用而不是值?

来自分类Dev

在特征主体Scala中引用统一值

来自分类Dev

Scala错误-前向引用扩展了值的定义

来自分类Dev

在特征主体Scala中引用统一值

来自分类Dev

Scala 模式匹配引用匹配值内的混淆

来自分类Dev

右值引用参数在通过std :: forward传递时到期。

来自分类Dev

如何声明经过模板参数推导的类型的右值引用?

来自分类Dev

右值引用模板对运算符的参数推导

来自分类Dev

使用右值引用作为默认参数

来自分类Dev

std :: bind():以右值引用作为参数绑定lambda

来自分类Dev

指向结构的参数,函数中引用的成员产生奇怪的值

来自分类Dev

函数参数中的硬编码值是const引用吗?

来自分类Dev

C ++中的函数重载按值或按引用传递参数

来自分类Dev

在右值引用参数上使用std :: move的原因

来自分类Dev

PowerShell函数参数-按引用还是按值?

Related 相关文章

热门标签

归档