Class ObjectLists


  • public final class ObjectLists
    extends java.lang.Object
    A class providing static methods and objects that do useful things with type-specific lists.
    See Also:
    Collections
    • Field Detail

      • EMPTY_LIST

        public static final ObjectLists.EmptyList EMPTY_LIST
        An empty list (immutable). It is serializable and cloneable.
    • Method Detail

      • shuffle

        public static <K> ObjectList<K> shuffle​(ObjectList<K> l,
                                                java.util.Random random)
        Shuffles the specified list using the specified pseudorandom number generator.
        Parameters:
        l - the list to be shuffled.
        random - a pseudorandom number generator.
        Returns:
        l.
      • emptyList

        public static <K> ObjectList<K> emptyList()
        Returns an empty list (immutable). It is serializable and cloneable.

        This method provides a typesafe access to EMPTY_LIST.

        Returns:
        an empty list (immutable).
      • singleton

        public static <K> ObjectList<K> singleton​(K element)
        Returns a type-specific immutable list containing only the specified element. The returned list is serializable and cloneable.
        Parameters:
        element - the only element of the returned list.
        Returns:
        a type-specific immutable list containing just element.
      • synchronize

        public static <K> ObjectList<K> synchronize​(ObjectList<K> l)
        Returns a synchronized type-specific list backed by the given type-specific list.
        Parameters:
        l - the list to be wrapped in a synchronized list.
        Returns:
        a synchronized view of the specified list.
        See Also:
        Collections.synchronizedList(List)
      • synchronize

        public static <K> ObjectList<K> synchronize​(ObjectList<K> l,
                                                    java.lang.Object sync)
        Returns a synchronized type-specific list backed by the given type-specific list, using an assigned object to synchronize.
        Parameters:
        l - the list to be wrapped in a synchronized list.
        sync - an object that will be used to synchronize the access to the list.
        Returns:
        a synchronized view of the specified list.
        See Also:
        Collections.synchronizedList(List)
      • unmodifiable

        public static <K> ObjectList<K> unmodifiable​(ObjectList<? extends K> l)
        Returns an unmodifiable type-specific list backed by the given type-specific list.
        Parameters:
        l - the list to be wrapped in an unmodifiable list.
        Returns:
        an unmodifiable view of the specified list.
        See Also:
        Collections.unmodifiableList(List)