0
我做了散列圖,其中包含varous類型的數據在java中,並希望將其傳遞給scala。斯卡拉 - 構建與散列圖
在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]]
它按我的意思工作,但是當我試圖用gradle構建它來製作一個罐子時。它帶有這個錯誤。
[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
我該如何從eclipse更改java版本? –
我更改了項目> java編譯器> jdk compliance> JDK compliance爲1.8,但仍然出現相同的錯誤。 –