【发布时间】:2016-05-08 11:52:39
【问题描述】:
例如,如果您有一个ArrayList,您可以执行以下操作:
ArrayList<T> list = new ArrayList<T>();
ObservableList<T> data = FXCollections.observableArrayList(list);
同样,如果我有一个定制的 Stack 而不是 ArrayList,我将如何制作一个 ObservableList?
【问题讨论】:
-
我们是在谈论
java.util.Stack还是本土实现?如果它是本土的,你能发布它的结构吗? -
Javadocs for
ModifiableObservableListBase展示了如何包装任意结构以使其可观察,如果您的Stack不是Collection实现。 -
还要注意
FXCollections.observableArrayList(collection)创建一个新的可观察列表,并将提供的集合的元素复制到它。在这种情况下,可观察列表(与FXCollections.observableList(list)不同)不受提供列表的支持:对可观察列表的更改不会传播到提供的列表,反之亦然。因此,复制此行为所需的只是一种获取堆栈中所有元素(作为集合或数组)的机制。
标签: java data-structures javafx stack javafx-8