我有一个在java
中定义的类public class A {
List<Group> javaMethod() {
}
}
和Scala中的一个类
public class S extends A {
override javaMethod: List[Group] {
}
}
但是,我收到一个错误method javaMethod has incompatible type
,我假设因为在被覆盖时在方法中返回的List是scala.immutable.List类型,并且是必需的对于javaMethod是java.util.List。
我无法访问A类,因此无法更改该功能的签名。如何在不覆盖类型错误的情况下返回我覆盖方法的scala List?
编辑: 这将从Java到Scala获取我的列表,但我想将Java列表转换为Scala列表。
import scala.collection.JavaConversions._
import scala.collection.mutable.ListBuffer
asList(ListBuffer(List(1,2,3): _*))
val x: java.util.List[Int] = ListBuffer(List(1,2,3): _*)