我试图做的时候
def subtract[T: Numeric](x: T, y: T) : T = x-y
在Scala 2.12中,无法识别-
。但是,这基本上等同于Addition with generic type parameter in Scala建议的内容。我需要改变什么?
答案 0 :(得分:3)
最简单的事情是import Numeric.Implicits._
。这会将标准中缀运算符-
,*
等添加到当前隐式作用域。然后一切都应该按预期工作。
或者,您可以下拉隐式并直接使用它。
def subtract[T: Numeric](x: T, y: T) : T = implicitly[Numeric[T]].minus(x,y)