如何将 ObservableList 转换为 ObservableSet
How can I cast an ObservableList to an ObservableSet
我正在将一个应用程序从 Java 1.7
迁移到 Java 11
,它使用 JavaFX
。
在迁移过程中,我遇到了一个转换问题,我有一个 ObservableList
,我需要一个 ObservableSet
。
我尝试用 (ObservableSet<MyObject>) MyObservableList<MyObject>
投射,但我有 :
ERROR; UNCOUGHT Exception java.lang.ClassCastException: class
com.sun.javafx.collections.ObservableListWrapper cannot be cast to
class javafx.collections.ObservableSet
(com.sun.javafx.collections.ObservableListWrapper and
javafx.collections.ObservableSet are in module javafx.base of loader
'app') java.lang.ClassCastException: class
com.sun.javafx.collections.ObservableListWrapper cannot be cast to
class javafx.collections.ObservableSet
(com.sun.javafx.collections.ObservableListWrapper and
javafx.collections.ObservableSet are in module javafx.base of loader
'app')
你有办法正确地 cast/transform 这个对象吗?
谢谢您的回答!
不能投,内部表示不同。您可以初始化一个新的 ObservableSet
对象和 addAll 您的列表,它接受任何类型的集合。
我正在将一个应用程序从 Java 1.7
迁移到 Java 11
,它使用 JavaFX
。
在迁移过程中,我遇到了一个转换问题,我有一个 ObservableList
,我需要一个 ObservableSet
。
我尝试用 (ObservableSet<MyObject>) MyObservableList<MyObject>
投射,但我有 :
ERROR; UNCOUGHT Exception java.lang.ClassCastException: class com.sun.javafx.collections.ObservableListWrapper cannot be cast to class javafx.collections.ObservableSet (com.sun.javafx.collections.ObservableListWrapper and javafx.collections.ObservableSet are in module javafx.base of loader 'app') java.lang.ClassCastException: class com.sun.javafx.collections.ObservableListWrapper cannot be cast to class javafx.collections.ObservableSet (com.sun.javafx.collections.ObservableListWrapper and javafx.collections.ObservableSet are in module javafx.base of loader 'app')
你有办法正确地 cast/transform 这个对象吗? 谢谢您的回答!
不能投,内部表示不同。您可以初始化一个新的 ObservableSet
对象和 addAll 您的列表,它接受任何类型的集合。