我知道scala.collection包中有两个非常有用的对象,它们将帮助我们实现这个目标:
-
JavaConverters(如果我想要明确并准确告诉我要转换的内容)
-
JavaConversions(如果我不想进行共同控制转换,让编译器为我做隐式工作)
但是我在我的案例中应用它们有一些麻烦,因为我的数据结构比我在许多例子中看到的其他数据结构稍微复杂一些 .
我在scala代码中,我希望我的scala函数返回Java集合 . 所以我想将Scala Seq [(Int,Seq [String])]转换为Java集合List [(int,List [String])] .
我怎样才能做到这一点?
2 回答
首先使用map映射
Seq[(Int, Seq[String])]
到Seq[(Int, List[String])]
然后再使用相同的函数到main集合或者更新的API:
自Scala 2.12.0起,不推荐使用JavaConversions . 请改用JavaConverters: