如何在Scala中定义特定容器类型的方法?
我有一个val list=list[Foo],我想在这个列表上定义某些方法,但只有当它是Foo类型时,比如list.prettyDisplay如何在Scala中定义特定容器类型的方法?,scala,Scala,我有一个val list=list[Foo],我想在这个列表上定义某些方法,但只有当它是Foo类型时,比如list.prettyDisplay 在Scala有可能吗?我正在看一本关于高级类型的教程,但我想我看不出我在找什么。您可以定义一个从List[Foo]到实现prettyDisplay的某个类的隐式转换。由于其参数的类型,此转换不适用于其他列表 class Foo implicit def betterFooList(l:List[Foo]) = new { def prettyDis
在Scala有可能吗?我正在看一本关于高级类型的教程,但我想我看不出我在找什么。您可以定义一个从List[Foo]到实现prettyDisplay的某个类的隐式转换。由于其参数的类型,此转换不适用于其他列表
class Foo
implicit def betterFooList(l:List[Foo]) = new {
def prettyDisplay() = ???
}
List(new Foo).prettyDisplay()
您可以定义从List[Foo]到实现prettyDisplay的某个类的隐式转换。由于其参数的类型,此转换不适用于其他列表
class Foo
implicit def betterFooList(l:List[Foo]) = new {
def prettyDisplay() = ???
}
List(new Foo).prettyDisplay()