想要吗
class Complex[T: Numeric](real: T, imag: T)
有意义的是,不是用Double
s、Long
s、BigInt
s编写一个Complex类,这样每个人都可以选择他需要的数字类型?
与非通用方法相比,性能如何?
目前,Numeric
不是@specialized
。因此,使用它的通用版本将受到装箱和开箱的影响,性能将大大降低。这里有一篇很好的博客文章,介绍了性能指标:
http://www.azavea.com/blogs/labs/2011/06/scalas-numeric-type-class-pt-2/
然而,您可以在不使用Numeric
的情况下直接编写复数类的@specialized
版本,并获得所有好处。
从严格实用的角度来看,我不确定带整数部分的复数的用法是什么。。。