мне нужно использовать Java-унаследованного кода со следующим способом:Использование java.util.Map от Scala
public void doit(Map <String, Object> vals) {...}
Мой Scala код:
var map = new java.util.HashMap[String, Any]
map += "testme" -> 'X'
doit(map)
дает =>
типа несоответствие; найдено: java.util.HashMap [String, Any] требуется: java.util.HashMap [java.lang.String, java.Object]
Так что я изменить его на:
var map = new java.util.HashMap[java.lang.String, Object]
map += "testme" -> 'X'
doit(map)
дает = >
тип несоответствие; найдено: Char required: java.lang.Object Примечание: примитивные типы неявно не преобразуются в AnyRef. Вы можете безопасно форсировать бокс путем литья x.asInstanceOf [AnyRef].
И в конце концов я придумал следующее:
var map = new java.util.HashMap[java.lang.String, Object]
map += "testme" -> 'X'.asInstanceOf[AnyRef]
doit(map)
ли есть более краткий способ справиться с этим?