Scala 2.13 以后Java集合与Scala集合互相转换

原来需要Java集合和Scala集合类型互换时引入

import scala.collection.JavaConverters._

即可,但在Scala 2.13版本中JavaConverter已经标记为即将弃用。
需要引入

import scala.jdk.CollectionConverters._

当需要把Java集合类型转换为Scala集合类型时调用asScala方法,当需要把Scala集合类型转换为Java集合类型时调用asJava
如遇到报错信息:

[ERROR] /data/code/github/DataXServer/httpserver/src/main/scala/org/tianlangstudio/data/hamal/server/http/HttpServer.scala:72: type mismatch;
 found   : Map[String,String] (in scala.collection.immutable) 
 required: Map[String,String] (in java.util) 
[ERROR]                 complete(taskHandler.submitTaskWithParams(taskDesc, parameterMap))
[ERROR]                                                                     ^
[ERROR] one error found

方法需要一个java.util.Map 类型的参数,实际传入的paramerMap是scala.collection.immutable.Map,类型不对。
这时只需将parameterMap改为parameterMap.asJava即可

complete(taskHandler.submitTaskWithParams(taskDesc, parameterMap.asJava))

你可能感兴趣的:(Scala,Java)