Module javafx.base

Interface ObservableList<E>

Type Parameters:
E - the list element type
All Superinterfaces:
Collection<E>, Iterable<E>, List<E>, Observable
All Known Subinterfaces:
ObservableListValue<E>, WritableListValue<E>
All Known Implementing Classes:
FilteredList, ListBinding, ListExpression, ListProperty, ListPropertyBase, ModifiableObservableListBase, ObservableListBase, ReadOnlyListProperty, ReadOnlyListPropertyBase, ReadOnlyListWrapper, SimpleListProperty, SortedList, TransformationList

public interface ObservableList<E>
extends List<E>, Observable
A list that allows listeners to track changes when they occur. Implementations can be created using methods in FXCollections such as observableArrayList, or with a SimpleListProperty.
Since:
JavaFX 2.0
See Also:
ListChangeListener, ListChangeListener.Change
  • Method Details

    • addListener

      void addListener​(ListChangeListener<? super E> listener)
      Add a listener to this observable list.
      Parameters:
      listener - the listener for listening to the list changes
    • removeListener

      void removeListener​(ListChangeListener<? super E> listener)
      Tries to remove a listener from this observable list. If the listener is not attached to this list, nothing happens.
      Parameters:
      listener - a listener to remove
    • addAll

      boolean addAll​(E... elements)
      A convenience method for var-arg addition of elements.
      Parameters:
      elements - the elements to add
      Returns:
      true (as specified by Collection.add(E))
    • setAll

      boolean setAll​(E... elements)
      Clears the ObservableList and adds all the elements passed as var-args.
      Parameters:
      elements - the elements to set
      Returns:
      true (as specified by Collection.add(E))
      Throws:
      NullPointerException - if the specified arguments contain one or more null elements
    • setAll

      boolean setAll​(Collection<? extends E> col)
      Clears the ObservableList and adds all elements from the collection.
      Parameters:
      col - the collection with elements that will be added to this observableArrayList
      Returns:
      true (as specified by Collection.add(E))
      Throws:
      NullPointerException - if the specified collection contains one or more null elements
    • removeAll

      boolean removeAll​(E... elements)
      A convenience method for var-arg usage of the removeAll method.
      Parameters:
      elements - the elements to be removed
      Returns:
      true if list changed as a result of this call
    • retainAll

      boolean retainAll​(E... elements)
      A convenience method for var-arg usage of the retainAll method.
      Parameters:
      elements - the elements to be retained
      Returns:
      true if list changed as a result of this call
    • remove

      void remove​(int from, int to)
      A simplified way of calling sublist(from, to).clear(). As this is a common operation, ObservableList has this method for convenient usage.
      Parameters:
      from - the start of the range to remove (inclusive)
      to - the end of the range to remove (exclusive)
      Throws:
      IndexOutOfBoundsException - if an illegal range is provided
    • filtered

      default FilteredList<E> filtered​(Predicate<E> predicate)
      Creates a FilteredList wrapper of this list using the specified predicate.
      Parameters:
      predicate - the predicate to use
      Returns:
      new FilteredList
      Since:
      JavaFX 8.0
    • sorted

      default SortedList<E> sorted​(Comparator<E> comparator)
      Creates a SortedList wrapper of this list using the specified comparator.
      Parameters:
      comparator - the comparator to use or null for unordered List
      Returns:
      new SortedList
      Since:
      JavaFX 8.0
    • sorted

      default SortedList<E> sorted()
      Creates a SortedList wrapper of this list with the natural ordering.
      Returns:
      new SortedList
      Since:
      JavaFX 8.0