不能很好地統一它,因為
val topicAsCollection: util.Collection[String] = util.List[String]
未突出顯示為錯誤,但編譯失敗
Error:(126, 59) class java.util.List is not a value
val topicAsCollection: util.Collection[String] = util.List[String]
uj5u.com熱心網友回復:
正確的方法是按以下方式初始化空串列:
val topicAsCollection: util.Collection[String] = Collections.emptyList()
但是,它會導致另一個錯誤:
這個問題在這里已經有了答案:
我在 Scala 中有一個帶有 Java 集合的代碼
val topicAsCollection: util.List[String] = Collections.emptyList()
topicAsCollection.add("recipes")
在運行時失敗
java.lang.UnsupportedOperationException was thrown.
java.lang.UnsupportedOperationException
at java.base/java.util.AbstractList.add(AbstractList.java:153)
at java.base/java.util.AbstractList.add(AbstractList.java:111)
因此,要在 Scala 中正確初始化 java ArrayList 集合,正確的初始化需要顯式型別和 new:
val topicAsCollection: util.ArrayList[String] = new util.ArrayList[String]()
轉載請註明出處,本文鏈接:https://www.uj5u.com/yidong/381446.html
上一篇:列印資料框中不同的列名
