Class AbstractReferenceBigList.ReferenceSubList<K>

All Implemented Interfaces:
BigList<K>, ObjectIterable<K>, ReferenceBigList<K>, ReferenceCollection<K>, Size64, Stack<K>, Serializable, Iterable<K>, Collection<K>
Direct Known Subclasses:
AbstractReferenceBigList.ReferenceRandomAccessSubList
Enclosing class:
AbstractReferenceBigList<K>

public static class AbstractReferenceBigList.ReferenceSubList<K> extends AbstractReferenceBigList<K> implements Serializable
A class implementing a sublist view.
See Also:
  • Constructor Details

    • ReferenceSubList

      public ReferenceSubList(ReferenceBigList<K> l, long from, long to)
  • Method Details

    • add

      public boolean add(K k)
      Description copied from class: AbstractReferenceBigList
      Specified by:
      add in interface Collection<K>
      Overrides:
      add in class AbstractReferenceBigList<K>
    • add

      public void add(long index, K k)
      Description copied from class: AbstractReferenceBigList
      Inserts the specified element at the specified position in this big list (optional operation).
      Specified by:
      add in interface BigList<K>
      Overrides:
      add in class AbstractReferenceBigList<K>
      Parameters:
      index - a position in the big list.
      k - an element to be inserted.
      See Also:
    • addAll

      public boolean addAll(long index, Collection<? extends K> c)
      Description copied from class: AbstractReferenceBigList
      Adds all of the elements in the specified collection to this list (optional operation).
      Specified by:
      addAll in interface BigList<K>
      Overrides:
      addAll in class AbstractReferenceBigList<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:
    • get

      public K get(long index)
      Description copied from interface: BigList
      Returns the element at the specified position.
      Specified by:
      get in interface BigList<K>
      Parameters:
      index - a position in the big list.
      Returns:
      the element at the specified position.
      See Also:
    • remove

      public K remove(long index)
      Description copied from class: AbstractReferenceBigList
      Removes the element at the specified position.
      Specified by:
      remove in interface BigList<K>
      Overrides:
      remove in class AbstractReferenceBigList<K>
      Parameters:
      index - a position in the big list.
      Returns:
      the element previously at the specified position.
      See Also:
    • set

      public K set(long index, K k)
      Description copied from class: AbstractReferenceBigList
      Replaces the element at the specified position in this big list with the specified element (optional operation).
      Specified by:
      set in interface BigList<K>
      Overrides:
      set in class AbstractReferenceBigList<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:
    • size64

      public long size64()
      Description copied from interface: Size64
      Returns the size of this data structure as a long.
      Specified by:
      size64 in interface Size64
      Returns:
      the size of this data structure.
    • getElements

      public void getElements(long from, Object[][] a, long offset, long length)
      Description copied from class: AbstractReferenceBigList
      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 ReferenceBigList<K>
      Overrides:
      getElements in class AbstractReferenceBigList<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.
    • removeElements

      public void removeElements(long from, long to)
      Description copied from class: AbstractReferenceBigList
      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 ReferenceBigList<K>
      Overrides:
      removeElements in class AbstractReferenceBigList<K>
      Parameters:
      from - the start index (inclusive).
      to - the end index (exclusive).
    • addElements

      public void addElements(long index, K[][] a, long offset, long length)
      Description copied from class: AbstractReferenceBigList
      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 ReferenceBigList<K>
      Overrides:
      addElements in class AbstractReferenceBigList<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.
    • listIterator

      public ObjectBigListIterator<K> listIterator(long index)
      Description copied from class: AbstractReferenceBigList
      Returns a type-specific list iterator on this type-specific big list starting at a given index.
      Specified by:
      listIterator in interface BigList<K>
      Specified by:
      listIterator in interface ReferenceBigList<K>
      Overrides:
      listIterator in class AbstractReferenceBigList<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:
    • spliterator

      public ObjectSpliterator<K> spliterator()
      Description copied from interface: ReferenceBigList
      Returns a type-specific spliterator on the elements of this big-list.

      BigList spliterators must report at least Spliterator.SIZED and Spliterator.ORDERED.

      See List.spliterator() for more documentation on the requirements of the returned spliterator (despite BigList not being a List, most of the same requirements apply.

      Specified by:
      spliterator in interface Collection<K>
      Specified by:
      spliterator in interface Iterable<K>
      Specified by:
      spliterator in interface ObjectIterable<K>
      Specified by:
      spliterator in interface ReferenceBigList<K>
      Specified by:
      spliterator in interface ReferenceCollection<K>
      Returns:
      a type-specific spliterator on the elements of this collection.
    • subList

      public ReferenceBigList<K> subList(long from, long to)
      Description copied from interface: ReferenceBigList
      Returns a type-specific view of the portion of this type-specific big list from the index from, inclusive, to the index to, exclusive.
      Specified by:
      subList in interface BigList<K>
      Specified by:
      subList in interface ReferenceBigList<K>
      Overrides:
      subList in class AbstractReferenceBigList<K>
      Parameters:
      from - the starting element (inclusive).
      to - the ending element (exclusive).
      Returns:
      a big sublist view of this big list.
      See Also: