Class AbstractObjectBigList<K>

    • Method Detail

      • add

        public void add​(long index,
                        K k)
        Inserts the specified element at the specified position in this big list (optional operation).

        This implementation always throws an UnsupportedOperationException.

        Specified by:
        add in interface BigList<K>
        Parameters:
        index - a position in the big list.
        k - an element to be inserted.
        See Also:
        List.add(int,Object)
      • remove

        public K remove​(long i)
        Removes the element at the specified position.

        This implementation always throws an UnsupportedOperationException.

        Specified by:
        remove in interface BigList<K>
        Parameters:
        i - a position in the big list.
        Returns:
        the element previously at the specified position.
        See Also:
        List.remove(int)
      • set

        public K set​(long index,
                     K k)
        Replaces the element at the specified position in this big list with the specified element (optional operation).

        This implementation always throws an UnsupportedOperationException.

        Specified by:
        set in interface BigList<K>
        Parameters:
        index - a position in the big list.
        k - the element to be stored at the specified position.
        Returns:
        the element previously at the specified positions.
        See Also:
        List.set(int,Object)
      • addAll

        public boolean addAll​(long index,
                              Collection<? extends K> c)
        Adds all of the elements in the specified collection to this list (optional operation).
        Specified by:
        addAll in interface BigList<K>
        Parameters:
        index - index at which to insert the first element from the specified collection.
        c - collection containing elements to be added to this big list.
        Returns:
        true if this big list changed as a result of the call
        See Also:
        List.addAll(int, Collection)
      • listIterator

        public ObjectBigListIterator<K> listIterator​(long index)
        Returns a type-specific list iterator on this type-specific big list starting at a given index.

        Note that this specification strengthens the one given in BigList.listIterator(long).

        This implementation is based on the random-access methods.

        Specified by:
        listIterator in interface BigList<K>
        Specified by:
        listIterator in interface ObjectBigList<K>
        Parameters:
        index - index of first element to be returned from the big-list iterator.
        Returns:
        a big-list iterator of the elements in this big list, starting at the specified position in this big list.
        See Also:
        BigList.listIterator(long)
      • indexOf

        public long indexOf​(Object k)
        Description copied from interface: BigList
        Returns the index of the first occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
        Specified by:
        indexOf in interface BigList<K>
        Parameters:
        k - the object to search for.
        Returns:
        the index of the first occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
        See Also:
        List.indexOf(Object)
      • lastIndexOf

        public long lastIndexOf​(Object k)
        Description copied from interface: BigList
        Returns the index of the last occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
        Specified by:
        lastIndexOf in interface BigList<K>
        Parameters:
        k - the object to search for.
        Returns:
        the index of the last occurrence of the specified element in this big list, or -1 if this big list does not contain the element.
        See Also:
        List.lastIndexOf(Object)
      • size

        public void size​(long size)
        Description copied from interface: BigList
        Sets the size of this big list.

        If the specified size is smaller than the current size, the last elements are discarded. Otherwise, they are filled with 0/null/false.

        Specified by:
        size in interface BigList<K>
        Parameters:
        size - the new size.
      • subList

        public ObjectBigList<K> subList​(long from,
                                        long to)
        Description copied from interface: ObjectBigList
        Returns a type-specific view of the portion of this type-specific big list from the index from, inclusive, to the index to, exclusive.

        Note that this specification strengthens the one given in BigList.subList(long,long).

        Specified by:
        subList in interface BigList<K>
        Specified by:
        subList in interface ObjectBigList<K>
        Parameters:
        from - the starting element (inclusive).
        to - the ending element (exclusive).
        Returns:
        a big sublist view of this big list.
        See Also:
        BigList.subList(long,long)
      • removeElements

        public void removeElements​(long from,
                                   long to)
        Removes (hopefully quickly) elements of this type-specific big list.

        This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.

        Specified by:
        removeElements in interface ObjectBigList<K>
        Parameters:
        from - the start index (inclusive).
        to - the end index (exclusive).
      • addElements

        public void addElements​(long index,
                                K[][] a,
                                long offset,
                                long length)
        Add (hopefully quickly) elements to this type-specific big list.

        This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.

        Specified by:
        addElements in interface ObjectBigList<K>
        Parameters:
        index - the index at which to add elements.
        a - the big array containing the elements.
        offset - the offset of the first element to add.
        length - the number of elements to add.
      • addElements

        public void addElements​(long index,
                                K[][] a)
        Add (hopefully quickly) elements to this type-specific big list.

        This implementation delegates to the analogous method for big-array fragments.

        Specified by:
        addElements in interface ObjectBigList<K>
        Parameters:
        index - the index at which to add elements.
        a - the big array containing the elements.
      • getElements

        public void getElements​(long from,
                                Object[][] a,
                                long offset,
                                long length)
        Copies (hopefully quickly) elements of this type-specific big list into the given big array.

        This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.

        Specified by:
        getElements in interface ObjectBigList<K>
        Parameters:
        from - the start index (inclusive).
        a - the destination big array.
        offset - the offset into the destination big array where to store the first element copied.
        length - the number of elements to be copied.
      • hashCode

        public int hashCode()
        Returns the hash code for this big list, which is identical to List.hashCode().
        Specified by:
        hashCode in interface Collection<K>
        Overrides:
        hashCode in class Object
        Returns:
        the hash code for this big list.
      • compareTo

        public int compareTo​(BigList<? extends K> l)
        Compares this big list to another object. If the argument is a BigList, this method performs a lexicographical comparison; otherwise, it throws a ClassCastException.
        Specified by:
        compareTo in interface Comparable<K>
        Parameters:
        l - a big list.
        Returns:
        if the argument is a BigList, a negative integer, zero, or a positive integer as this list is lexicographically less than, equal to, or greater than the argument.
        Throws:
        ClassCastException - if the argument is not a big list.
      • push

        public void push​(K o)
        Description copied from interface: Stack
        Pushes the given object on the stack.
        Specified by:
        push in interface Stack<K>
        Parameters:
        o - the object that will become the new top of the stack.
      • pop

        public K pop()
        Description copied from interface: Stack
        Pops the top off the stack.
        Specified by:
        pop in interface Stack<K>
        Returns:
        the top of the stack.
      • top

        public K top()
        Description copied from interface: Stack
        Peeks at the top of the stack (optional operation).

        This default implementation returns peek(0).

        Specified by:
        top in interface Stack<K>
        Returns:
        the top of the stack.
      • peek

        public K peek​(int i)
        Description copied from interface: Stack
        Peeks at an element on the stack (optional operation).

        This default implementation just throws an UnsupportedOperationException.

        Specified by:
        peek in interface Stack<K>
        Parameters:
        i - an index from the stop of the stack (0 represents the top).
        Returns:
        the i-th element on the stack.