我正在研究Scala程序,该程序从Java库调用函数,处理结果并吐出CSV.
有问题的Java函数如下所示:
Map<String, Map<String, AtomicLong>> getData();
Run Code Online (Sandbox Code Playgroud)
斯卡拉:
import scala.collection.JavaConversions._
def analysisAndCsvStuff(data: Map[String, Map[String, AtomicLong]]): Unit { ... }
Run Code Online (Sandbox Code Playgroud)
错误:
type mismatch;
found:java.util.Map[java...String,java...Map[java...String,java...AtomicLong]]
required: scala...Map[String,scala...Map[String,java...AtomicLong]]
Run Code Online (Sandbox Code Playgroud)
(路径名称破坏了格式.)
我猜测JavaConversions可以成功转换外部java ... Map而不是内部java ... Map.我看到了这个问题,但我不确定如何编写"显式隐式转换".