我是 Scala 新手
我有一个像下面这样的java方法
public void myMethod (Collection<String> param) throws MyException {
// process param
}
我想使用 Scala Junit 测试来测试此方法
@Test
def myMethodTest() {
try {
....myMethod(Seq("myString"))
} catch {
case e : MyException => throw new AssertionError ("Failed myMethod : " + e.getMessage)
}
}
但它给了我一个类型不匹配错误。我该如何解决这个问题?
最佳答案
Seq
不是 Java Collection
。您应该使用JavaConverters
隐式转换它们:
import scala.collection.JavaConverters._
myMethod(Seq("myString").asJava)
或者您可以直接使用Java集合,例如通过Arrays.asList()
:
import java.util.Arrays
myMethod(Arrays.asList("myString"))
关于java - 类型不匹配将 Scala JUnit 测试中的数组传递给 Java 方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22996165/