类型参数为

时间:2016-04-01 14:07:45

标签: scala

我正在尝试使用类似参数创建一个第一类函数,如下所示 并得到一个错误,当然答案很简单。

知道scala中是否可以这样做以及如何做到这一点?

var increase = [T](x: T) => x + 1
println(increase(10))

1 个答案:

答案 0 :(得分:1)

您无法使用类型参数定义匿名函数。

相反,您可以将增量定义为方法:

def increase[T: Numeric](x: T, y: T): T = implicitly[Numeric[T]].plus(x, y)

然后叫它

println(increase(10, 1))