Lan*_*nbo 8 types functional-programming scala
我在Scala中遇到了一个小问题.在Haskell中,我可以这样做:
add :: (Num a) => (a,a) -> (a,a) -> (a,a)
Run Code Online (Sandbox Code Playgroud)
这样,我可以投入add任何类型的数字和支持+等.我希望Scala类相同,如下所示:
case class NumPair[A <: Numeric](x: A, y: A)
Run Code Online (Sandbox Code Playgroud)
但这似乎不起作用.但是由于Scala Docs,它Numeric[T]是允许这些操作的唯一特征,并且似乎被扩展Int,Float等等.
有小费吗?
Mad*_*doc 11
case class NumPair[A](x:A, y:A)(implicit num:Numeric[A])
Run Code Online (Sandbox Code Playgroud)
该Numeric实例本身不被延长Int,Float等,但它被提供作为一个隐含的对象.有关更长的解释,请参阅此处.
| 归档时间: |
|
| 查看次数: |
1925 次 |
| 最近记录: |