0
Я сделал hashmap, который содержит varous тип данных в java и хотел бы передать его scala.Scala - build with hashmap
В Java
HashMap<String, Object> myMap = new HashMap<String, Object>();
В Скале
def myApp(myMap: HashMap[String, Any]) // Object -> Any
HashMap был принят хорошо, и использовали его, как показано ниже.
val aValue = myMap.getOrDefault("A", "a").asInstanceOf[String]
val bValue = myMap.getOrDefault("B", new Hashmap[String, String]).asInstanceOf[ Hashmap[String, String]]
Это было так, как я ожидал, НО, когда я попытался построить его с помощью градиента, чтобы сделать банку. Он пришел с этой ошибкой.
[ant:scalac] myApp.scala:44: error: value getOrDefault is not a member of java.util.HashMap[String, Any]
[ant:scalac] Note: implicit method myEncoder is not applicable here because it comes after the application point and it lacks an explicit result type
[ant:scalac] val aValue = myMap.getOrDefault("A", "a").asInstanceOf[String]
[ant:scalac] ^
Какую версию Java вы используете? 'getOrDefault' от Java 8 – 4castle
Как мне изменить версию java из eclipse? –
Я изменил проект> java Compiler> соответствие jdk> соответствие JDK как 1,8, но получило ту же ошибку. –