【发布时间】:2014-10-13 13:22:35
【问题描述】:
我经常出现这样的问题,虽然我将scala.collection.JavaConverters._转换器导入到我的scala文件中,但隐式转换没有发生。
假设以下代码(其中submissionStorage.get 是一些返回 Java Map 的 Java 函数)
import scala.collection.JavaConverters._
import scala.collection.mutable
...
val submissions: java.util.Map[String, String] = submissionStorage.get(formname)
val submissionJavaKeys: java.util.Set[String] = submissions.keySet()
val submissionScalaKeys: mutable.Set[String] = submissionJavaKeys
导致以下编译错误:
类型不匹配;发现:java.util.Set[String] 需要: scala.collection.mutable.Set[String]
现在documentation of the JavaConverters 声明有一个转换“scala.collection.mutable.Set java.util.Set”,这正是我需要的。
我做错了什么,那么 JavaConverters 在什么条件下工作?
【问题讨论】:
标签: scala