0
我正在嘗試實現一種方法,該方法可以接受Int
和Double
的Seq
。我聽說這可以使用Numeric
完成,但是我在Scala書中讀到了一個名爲@specialized
的註釋。在Scala中正確使用@specialized
所以,我想實現的方法如下
def getMedian[@specialized(Int, Double) T](s:Seq[T]):T = {
s.sorted match {
case y:Seq[T] if (y.length % 2 == 0) => y(0) + y(1)/2
}
}
但是由於類型提示似乎認爲T
是String
斯卡拉不承認+
操作。
注:我簡化了等式的可讀性。它不再代表中位數計算。