- java.lang.Object
-
- javafx.collections.FXCollections
-
public class FXCollections extends Object
由静态方法组成的实用程序类,它们是java.util.Collections方法的1:1。
包装方法(如synchronizedObservableList或emptyObservableList)与Collections中的方法具有完全相同的功能,除了它们返回ObservableList,因此适用于在输入上需要ObservableList的方法。
这里的效用方法主要是出于性能原因。 所有方法的优化方式是仅产生有限数量的通知。 另一方面,java.util.Collections方法可能会多次在ObservableList上调用“修改方法”,从而产生一些通知。- 从以下版本开始:
- JavaFX 2.0
-
-
方法摘要
所有方法 静态方法 具体的方法 Modifier and Type 方法 描述 static <E> ObservableList<E>
checkedObservableList(ObservableList<E> list, Class<E> type)
在提供的可观察列表之上创建并返回一个类型安全的包装器。static <K,V> ObservableMap<K,V>
checkedObservableMap(ObservableMap<K,V> map, Class<K> keyType, Class<V> valueType)
在提供的可观察地图的顶部创建并返回类型安全的包装器。static <E> ObservableSet<E>
checkedObservableSet(ObservableSet<E> set, Class<E> type)
在提供的可观察集之上创建并返回一个类型安全的包装器。static <E> ObservableList<E>
concat(ObservableList<E>... lists)
将更多可观察的列表连接成一个。static <T> void
copy(ObservableList<? super T> dest, List<? extends T> src)
将元素从src复制到dest。static <E> ObservableList<E>
emptyObservableList()
创建和清空不可修改的可观察列表。static <K,V> ObservableMap<K,V>
emptyObservableMap()
创建和清空不可修改的可观测地图。static <E> ObservableSet<E>
emptyObservableSet()
创建和清空不可修改的可观察集。static <T> void
fill(ObservableList<? super T> list, T obj)
用obj填写提供的列表。static <E> ObservableList<E>
observableArrayList()
创建一个由数组列表支持的新的可观察列表。static <E> ObservableList<E>
observableArrayList(E... items)
创建一个新的可观察数组列表,items
添加了items
。static <E> ObservableList<E>
observableArrayList(Collection<? extends E> col)
创建一个新的可观察数组列表,并向其添加一个集合col
的内容。static <E> ObservableList<E>
observableArrayList(Callback<E,Observable[]> extractor)
创建一个由arraylist支持的新的可观察列表。static ObservableFloatArray
observableFloatArray()
创建一个新的空可观察浮点数组。static ObservableFloatArray
observableFloatArray(float... values)
创建一个新的可观察浮点数组,values
设置了values
。static ObservableFloatArray
observableFloatArray(ObservableFloatArray array)
在给定的array
创建一个新的可观察浮点数列,其中包含元素的副本。static <K,V> ObservableMap<K,V>
observableHashMap()
创建一个由HashMap支持的新的可观察的地图。static ObservableIntegerArray
observableIntegerArray()
创建一个新的空可观察整数数组。static ObservableIntegerArray
observableIntegerArray(int... values)
创建一个新的可观察整数数组,设置values
。static ObservableIntegerArray
observableIntegerArray(ObservableIntegerArray array)
使用给定的array
的元素副本创建一个新的可观察整数数组。static <E> ObservableList<E>
observableList(List<E> list)
构造由指定列表支持的ObservableList。static <E> ObservableList<E>
observableList(List<E> list, Callback<E,Observable[]> extractor)
构造由指定列表支持的ObservableList。static <K,V> ObservableMap<K,V>
observableMap(Map<K,V> map)
构造由指定地图支持的ObservableMap。static <E> ObservableSet<E>
observableSet(E... elements)
构造一个由包含所有指定元素的HashSet支持的ObservableSet。static <E> ObservableSet<E>
observableSet(Set<E> set)
构造由指定集合支持的ObservableSet。static <T> boolean
replaceAll(ObservableList<T> list, T oldVal, T newVal)
用newVal元素替换列表中的所有oldVal元素。static void
reverse(ObservableList list)
反转列表中的顺序列表中仅发送 一个更改通知。static void
rotate(ObservableList list, int distance)
按距离旋转列表。static void
shuffle(ObservableList<?> list)
随机播放可观察列表中的所有元素。static void
shuffle(ObservableList list, Random rnd)
随机播放可观察列表中的所有元素。static <E> ObservableList<E>
singletonObservableList(E e)
使用单个元素创建一个不可修改的可观察列表。static <T extends Comparable<? super T>>
voidsort(ObservableList<T> list)
对提供的可观察列表进行排序。static <T> void
sort(ObservableList<T> list, Comparator<? super T> c)
使用c比较器对提供的可观察列表进行排序。static <E> ObservableList<E>
synchronizedObservableList(ObservableList<E> list)
在提供的可观察列表之上创建并返回一个同步的包装器。static <K,V> ObservableMap<K,V>
synchronizedObservableMap(ObservableMap<K,V> map)
在提供的可观察地图的顶部创建并返回同步的包装器。static <E> ObservableSet<E>
synchronizedObservableSet(ObservableSet<E> set)
在提供的可观察集合之上创建并返回同步的包装器。static <E> ObservableList<E>
unmodifiableObservableList(ObservableList<E> list)
在提供的可观察列表之上创建并返回不可修改的包装器列表。static <K,V> ObservableMap<K,V>
unmodifiableObservableMap(ObservableMap<K,V> map)
构造一个只读接口到指定的ObservableMap。static <E> ObservableSet<E>
unmodifiableObservableSet(ObservableSet<E> set)
在提供的可观察集合之上创建并返回不可修改的包装器。
-
-
-
方法详细信息
-
observableList
public static <E> ObservableList<E> observableList(List<E> list)
构造由指定列表支持的ObservableList。 ObservableList实例上的突变操作将被报告给在该实例上注册的观察者。
请注意,直接对基础列表进行的变异操作不会报告给包含它的任何ObservableList的观察者。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
list
- 一个具体的List,支持这个ObservableList - 结果
- 一个新创建的ObservableList
-
observableList
public static <E> ObservableList<E> observableList(List<E> list, Callback<E,Observable[]> extractor)
构造由指定列表支持的ObservableList。 ObservableList实例上的突变操作将被报告给在该实例上注册的观察者。
请注意,直接对基础列表进行的变异操作不会报告给包含它的任何ObservableList的观察者。
该列表还通过使用extractor
报告其中的元素的突变。 提取器返回的可观察对象(应用于每个列表元素)将被收听以进行更改,并转换为ListChangeListener的“更新”更新。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
list
- 一个具体的List,支持这个ObservableList -
extractor
- 元素到Observable []转换器 - 结果
- 一个新创建的ObservableList
- 从以下版本开始:
- JavaFX 2.1
-
observableMap
public static <K,V> ObservableMap<K,V> observableMap(Map<K,V> map)
构造由指定地图支持的ObservableMap。 ObservableMap实例上的突变操作将被报告给在该实例上注册的观察者。
请注意,直接对底层地图进行的变异操作不会报告给包装它的任何ObservableMap的观察者。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 参数
-
map
- 一个支持该ObservableMap的地图 - 结果
- 一个新创建的ObservableMap
-
observableSet
public static <E> ObservableSet<E> observableSet(Set<E> set)
构造由指定集合支持的ObservableSet。 ObservableSet实例上的突变操作将被报告给在该实例上注册的观察者。
请注意,直接对基础集进行的变异操作不会报告给包含它的任何ObservableSet的观察者。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
set
- 一个支持此ObservableSet的Set - 结果
- 一个新创建的ObservableSet
- 从以下版本开始:
- JavaFX 2.1
-
observableSet
public static <E> ObservableSet<E> observableSet(E... elements)
构造一个由包含所有指定元素的HashSet支持的ObservableSet。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
elements
- 将添加到返回的ObservableSet中的元素 - 结果
- 一个新创建的ObservableSet
- 从以下版本开始:
- JavaFX 2.1
-
unmodifiableObservableMap
public static <K,V> ObservableMap<K,V> unmodifiableObservableMap(ObservableMap<K,V> map)
构造一个只读接口到指定的ObservableMap。 只有对基础的ObservableMap进行的变异操作才会被报告给在不可修改的实例上注册的观察者。 这允许客户端跟踪地图中的更改,但不允许修改它。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 参数
-
map
- 要由此接口监视的ObservableMap - 结果
- 一个新创建的UnmodifiableObservableMap
-
checkedObservableMap
public static <K,V> ObservableMap<K,V> checkedObservableMap(ObservableMap<K,V> map, Class<K> keyType, Class<V> valueType)
在提供的可观察地图的顶部创建并返回类型安全的包装器。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 参数
-
map
- 要包装的可观测地图 -
keyType
-map
允许的密钥的类型 -
valueType
-map
允许持有的值的类型 - 结果
- 指定地图的动态类型安全视图
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.checkedMap(java.util.Map, java.lang.Class, java.lang.Class)
-
synchronizedObservableMap
public static <K,V> ObservableMap<K,V> synchronizedObservableMap(ObservableMap<K,V> map)
在提供的可观察地图的顶部创建并返回同步的包装器。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 参数
-
map
- 要在同步的地图中“包裹”的地图。 - 结果
- 可观测地图的同步版本
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.synchronizedMap(java.util.Map)
-
emptyObservableMap
public static <K,V> ObservableMap<K,V> emptyObservableMap()
创建和清空不可修改的可观测地图。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 结果
- 一个空的不可修改的可观测地图
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.emptyMap()
-
observableIntegerArray
public static ObservableIntegerArray observableIntegerArray()
创建一个新的空可观察整数数组。- 结果
- 一个新创建的ObservableIntegerArray
- 从以下版本开始:
- JavaFX 8.0
-
observableIntegerArray
public static ObservableIntegerArray observableIntegerArray(int... values)
创建一个新的可观察整数数组,values
设置了values
。- 参数
-
values
- 将在新的可观察整数数组中的值 - 结果
- 一个新创建的ObservableIntegerArray
- 从以下版本开始:
- JavaFX 8.0
-
observableIntegerArray
public static ObservableIntegerArray observableIntegerArray(ObservableIntegerArray array)
使用给定的array
的元素副本创建一个新的可观察整数数组。- 参数
-
array
- 可复制的整数数组 - 结果
- 一个新创建的ObservableIntegerArray
- 从以下版本开始:
- JavaFX 8.0
-
observableFloatArray
public static ObservableFloatArray observableFloatArray()
创建一个新的空可观察浮点数组。- 结果
- 一个新创建的ObservableFloatArray
- 从以下版本开始:
- JavaFX 8.0
-
observableFloatArray
public static ObservableFloatArray observableFloatArray(float... values)
创建一个新的可观察的浮点数组,values
设置了values
。- 参数
-
values
- 将在新的可观察浮点数组中的值 - 结果
- 一个新创建的ObservableFloatArray
- 从以下版本开始:
- JavaFX 8.0
-
observableFloatArray
public static ObservableFloatArray observableFloatArray(ObservableFloatArray array)
在给定的array
创建一个新的可观察浮点数组,其中包含元素的副本。- 参数
-
array
- 可观察的浮点数组复制 - 结果
- 一个新创建的ObservableFloatArray
- 从以下版本开始:
- JavaFX 8.0
-
observableArrayList
public static <E> ObservableList<E> observableArrayList()
创建一个由数组列表支持的新的可观察列表。- 参数类型
-
E
- 要包装的列表的类型 - 结果
- 一个新创建的ObservableList
- 另请参见:
-
observableList(java.util.List)
-
observableArrayList
public static <E> ObservableList<E> observableArrayList(Callback<E,Observable[]> extractor)
创建一个由arraylist支持的新的可观察列表。 此列表报告元素更新。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
extractor
- 元素到Observable []转换器。 监听可观察的对象以查看元素上的变化。 - 结果
- 一个新创建的ObservableList
- 从以下版本开始:
- JavaFX 2.1
- 另请参见:
-
observableList(java.util.List, javafx.util.Callback)
-
observableArrayList
public static <E> ObservableList<E> observableArrayList(E... items)
创建一个新的可观察数组列表,items
添加了items
。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
items
- 将在新的可观察的ArrayList中的项目 - 结果
- 一个新创建的observableArrayList
- 另请参见:
-
observableArrayList()
-
observableArrayList
public static <E> ObservableList<E> observableArrayList(Collection<? extends E> col)
创建一个新的可观察数组列表,并向其添加一个集合col
的内容。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
col
- 应该将哪些内容添加到observableArrayList的集合 - 结果
- 一个新创建的observableArrayList
-
observableHashMap
public static <K,V> ObservableMap<K,V> observableHashMap()
创建一个由HashMap支持的新的可观察的地图。- 参数类型
-
K
- 包装密钥的类型 -
V
- 包装值的类型 - 结果
- 一个新创建的可观察的HashMap
-
concat
public static <E> ObservableList<E> concat(ObservableList<E>... lists)
将更多可观察的列表连接成一个。 结果列表将由数组列表支持。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
lists
- 列表连接 - 结果
- 新的可观察数组列表从参数中连接起来
-
unmodifiableObservableList
public static <E> ObservableList<E> unmodifiableObservableList(ObservableList<E> list)
在提供的可观察列表之上创建并返回不可修改的包装器列表。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
list
- 要包装的ObservableList - 结果
- 一个不可修改的ObserableList包装器
- 另请参见:
-
Collections.unmodifiableList(java.util.List)
-
checkedObservableList
public static <E> ObservableList<E> checkedObservableList(ObservableList<E> list, Class<E> type)
在提供的可观察列表之上创建并返回一个类型安全的包装器。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
list
- 要包装的可观察列表 -
type
-list
允许持有的元素的类型 - 结果
- 指定列表的动态类型安全视图
- 另请参见:
-
Collections.checkedList(java.util.List, java.lang.Class)
-
synchronizedObservableList
public static <E> ObservableList<E> synchronizedObservableList(ObservableList<E> list)
在提供的可观察列表之上创建并返回一个同步的包装器。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
list
- 要在同步列表中“包装”的列表。 - 结果
- 可观察列表的同步版本
- 另请参见:
-
Collections.synchronizedList(java.util.List)
-
emptyObservableList
public static <E> ObservableList<E> emptyObservableList()
创建和清空不可修改的可观察列表。- 参数类型
-
E
- 要包装的列表的类型 - 结果
- 一个空的不可修改的可观察列表
- 另请参见:
-
Collections.emptyList()
-
singletonObservableList
public static <E> ObservableList<E> singletonObservableList(E e)
使用单个元素创建一个不可修改的可观察列表。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
e
- 这个单例可观察列表中唯一的元素 - 结果
- 单身可见列表
- 另请参见:
-
Collections.singletonList(java.lang.Object)
-
unmodifiableObservableSet
public static <E> ObservableSet<E> unmodifiableObservableSet(ObservableSet<E> set)
在提供的可观察集合之上创建并返回不可修改的包装器。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
set
- 要包装的ObservableSet - 结果
- 一个不可修改的ObserableSet包装器
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.unmodifiableSet(java.util.Set)
-
checkedObservableSet
public static <E> ObservableSet<E> checkedObservableSet(ObservableSet<E> set, Class<E> type)
在提供的可观察集之上创建并返回一个类型安全的包装器。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
set
- 要包装的可观察组 -
type
-set
允许持有的元素的类型 - 结果
- 指定集合的动态类型安全视图
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.checkedSet(java.util.Set, java.lang.Class)
-
synchronizedObservableSet
public static <E> ObservableSet<E> synchronizedObservableSet(ObservableSet<E> set)
在提供的可观察集合之上创建并返回同步的包装器。- 参数类型
-
E
- 要包装的列表的类型 - 参数
-
set
- 要在同步集中“包装”的集合。 - 结果
- 可观察集合的同步版本
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.synchronizedSet(java.util.Set)
-
emptyObservableSet
public static <E> ObservableSet<E> emptyObservableSet()
创建和清空不可修改的可观察集。- 参数类型
-
E
- 要包装的列表的类型 - 结果
- 一个空的不可修改的可观察集
- 从以下版本开始:
- JavaFX 8.0
- 另请参见:
-
Collections.emptySet()
-
copy
public static <T> void copy(ObservableList<? super T> dest, List<? extends T> src)
将元素从src复制到dest。 仅对Dest发出一个更改通知。- 参数类型
-
T
- 要包装的列表的类型 - 参数
-
dest
- 目的地可见列表 -
src
- 源列表 - 另请参见:
-
Collections.copy(java.util.List, java.util.List)
-
fill
public static <T> void fill(ObservableList<? super T> list, T obj)
用obj填写提供的列表。 在列表中只发出一个更改通知。- 参数类型
-
T
- 要包装的列表的类型 - 参数
-
list
- 要填写的列表 -
obj
- 用来填写列表的对象 - 另请参见:
-
Collections.fill(java.util.List, java.lang.Object)
-
replaceAll
public static <T> boolean replaceAll(ObservableList<T> list, T oldVal, T newVal)
用newVal元素替换列表中的所有oldVal元素。 在列表中只发出一个更改通知。- 参数类型
-
T
- 要包装的列表的类型 - 参数
-
list
- 将更换其元素的列表 -
oldVal
- 要替换的元素 -
newVal
- 替换 - 结果
- 如果列表被修改,则为true
- 另请参见:
-
Collections.replaceAll(java.util.List, java.lang.Object, java.lang.Object)
-
reverse
public static void reverse(ObservableList list)
反转列表中的顺序列表中仅发送 一个更改通知。- 参数
-
list
- 要反转的列表 - 另请参见:
-
Collections.reverse(java.util.List)
-
rotate
public static void rotate(ObservableList list, int distance)
按距离旋转列表。 在列表中只发出一个更改通知。- 参数
-
list
- 要旋转的列表 -
distance
- 旋转距离 - 另请参见:
-
Collections.rotate(java.util.List, int)
-
shuffle
public static void shuffle(ObservableList<?> list)
随机播放可观察列表中的所有元素。 在列表中只发出一个更改通知。- 参数
-
list
- 要洗牌的列表 - 另请参见:
-
Collections.shuffle(java.util.List)
-
shuffle
public static void shuffle(ObservableList list, Random rnd)
随机播放可观察列表中的所有元素。 在列表中只发出一个更改通知。- 参数
-
list
- 要洗牌的列表 -
rnd
- 用于混洗的随机生成器 - 另请参见:
-
Collections.shuffle(java.util.List, java.util.Random)
-
sort
public static <T extends Comparable<? super T>> void sort(ObservableList<T> list)
对提供的可观察列表进行排序。 在列表中只发出一个更改通知。- 参数类型
-
T
- 要包装的列表的类型 - 参数
-
list
- 要排序的列表 - 另请参见:
-
Collections.sort(java.util.List)
-
sort
public static <T> void sort(ObservableList<T> list, Comparator<? super T> c)
使用c比较器对提供的可观察列表进行排序。 在列表中只发出一个更改通知。- 参数类型
-
T
- 要包装的列表的类型 - 参数
-
list
- 要排序的列表 -
c
- 用于排序的比较器。 如果需要自然排序,则为空。 - 另请参见:
-
Collections.sort(java.util.List, java.util.Comparator)
-
-