相关疑难解决方法(0)

Scala中的JavaConverters和JavaConversions之间有什么区别?

scala.collection,有两个非常相似的对象JavaConversionsJavaConverters.

  • 这两个对象有什么区别?
  • 为什么它们都存在?
  • 我什么时候想要使用其中一个?

scala scala-java-interop scala-collections

195
推荐指数
4
解决办法
4万
查看次数

在Java代码中从scala.collection.Seq <String>转换为java.util.List <String>

我从Java调用Scala方法.我需要进行从Seq到List的转换.

我无法修改Scala方法的签名,所以我无法使用该asJavaCollection方法scala.collection.JavaConversions._

有关如何实现这一目标的任何想法?

使用Scala 2.9.3

java scala type-conversion scala-java-interop

29
推荐指数
3
解决办法
2万
查看次数

使用JavaConversions在java和scala集合之间进行隐式转换

我使用泛型函数合并了scala Set的scalaMap

def mergeMaps[A, B](ms: Set[Map[A, B]])(f: (B, B) => B): Map[A, B] =
(Map[A, B]() /: (for (m <- ms; kv <- m) yield kv))
{
  (a, kv) =>
  a + (if (a.contains(kv._1)) kv._1 -> f(a(kv._1), kv._2) else kv)
}
Run Code Online (Sandbox Code Playgroud)

这可以处理存在相同键冲突的情况.但是,我想在Scala Code中使用Java集合.我研究了一下然后发现了JavaConversions.我导入了它并写了这个

def mergeMaps[A, B](ms: Set[Map[A, B]])(f: (B, B) => B): Map[A, B] =
(new util.HashMap[A, B] /: (for (m <- ms; kv <- m) yield kv))
{
  case (a, kv) =>
    a + (if …
Run Code Online (Sandbox Code Playgroud)

java scala scala-collections

0
推荐指数
1
解决办法
1535
查看次数