Module  javafx.base
软件包  javafx.collections

Class FXCollections



  • public class FXCollections
    extends Object
    由静态方法组成的实用程序类,它们是java.util.Collections方法的1:1。

    包装方法(如synchronizedObservableList或emptyObservableList)与Collections中的方法具有完全相同的功能,除了它们返回ObservableList,因此适用于在输入上需要ObservableList的方法。

    这里的效用方法主要是出于性能原因。 所有方法的优化方式是仅产生有限数量的通知。 另一方面,java.util.Collections方法可能会多次在ObservableList上调用“修改方法”,从而产生一些通知。
    从以下版本开始:
    JavaFX 2.0
    • 方法详细信息

      • 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()
      • 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)
      • 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)