从Groovy调用Scala:如何处理不同的集合类型?

时间:2010-11-29 10:39:58

标签: scala interop groovy

我正在使用 Groovy进行测试使用Scala进行实际代码。显然我经常使用Scala的集合类型 - 但是当我在Groovy中生成测试数据时,我经常使用java.util。* - types。

我开始编写基于scalaj-collection库的静态转换方法。但那不是'groovy'。

将一个转换为另一个的最佳方法是什么? 隐式转换可能会以某种方式工作吗?

更新

例如,如果我不手动转换类型我当然得到:

groovy.lang.MissingMethodException: 
No signature of method: static setup is applicable for argument types: (java.util.ArrayList)
    Possible solutions: setup(scala.collection.immutable.List)

2 个答案:

答案 0 :(得分:0)

您是否尝试过“内置”隐式转换?

import scala.collection.JavaConversions._

答案 1 :(得分:0)

另一种方法是在声明参数时更改Scala代码以使用Java集合类型,并依赖方法体中的隐式转换来获得Scala集合操作的好处。