Class AbstractObjectBigList.ObjectSubList<K>

java.lang.Object
java.util.AbstractCollection<K>
it.unimi.dsi.fastutil.objects.AbstractObjectCollection<K>
it.unimi.dsi.fastutil.objects.AbstractObjectBigList<K>
it.unimi.dsi.fastutil.objects.AbstractObjectBigList.ObjectSubList<K>
All Implemented Interfaces:
BigList<K>, ObjectBigList<K>, ObjectCollection<K>, ObjectIterable<K>, Size64, Stack<K>, java.io.Serializable, java.lang.Comparable<BigList<? extends K>>, java.lang.Iterable<K>, java.util.Collection<K>
Direct Known Subclasses:
AbstractObjectBigList.ObjectRandomAccessSubList
Enclosing class:
AbstractObjectBigList<K>

public static class AbstractObjectBigList.ObjectSubList<K>
extends AbstractObjectBigList<K>
implements java.io.Serializable
A class implementing a sublist view.
See Also:
Serialized Form
  • Nested Class Summary

    Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.objects.AbstractObjectBigList

    AbstractObjectBigList.ObjectRandomAccessSubList<K>, AbstractObjectBigList.ObjectSubList<K>
  • Constructor Summary

    Constructors
    Constructor Description
    ObjectSubList​(ObjectBigList<K> l, long from, long to)  
  • Method Summary

    Modifier and Type Method Description
    void add​(long index, K k)
    Inserts the specified element at the specified position in this big list (optional operation).
    boolean add​(K k)
    boolean addAll​(long index, java.util.Collection<? extends K> c)
    Adds all of the elements in the specified collection to this list (optional operation).
    void addElements​(long index, K[][] a, long offset, long length)
    Add (hopefully quickly) elements to this type-specific big list.
    K get​(long index)
    Returns the element at the specified position.
    void getElements​(long from, java.lang.Object[][] a, long offset, long length)
    Copies (hopefully quickly) elements of this type-specific big list into the given big array.
    ObjectBigListIterator<K> listIterator​(long index)
    Returns a type-specific list iterator on this type-specific big list starting at a given index.
    K remove​(long index)
    Removes the element at the specified position.
    void removeElements​(long from, long to)
    Removes (hopefully quickly) elements of this type-specific big list.
    K set​(long index, K k)
    Replaces the element at the specified position in this big list with the specified element (optional operation).
    long size64()
    Returns the size of this data structure as a long.
    ObjectSpliterator<K> spliterator()
    Returns a type-specific spliterator on the elements of this big-list.
    ObjectBigList<K> subList​(long from, long to)
    Returns a type-specific view of the portion of this type-specific big list from the index from, inclusive, to the index to, exclusive.

    Methods inherited from class java.util.AbstractCollection

    containsAll, isEmpty, remove, removeAll, retainAll, toArray, toArray

    Methods inherited from class java.lang.Object

    getClass, notify, notifyAll, wait, wait, wait

    Methods inherited from interface java.util.Collection

    containsAll, isEmpty, parallelStream, remove, removeAll, removeIf, retainAll, stream, toArray, toArray, toArray

    Methods inherited from interface it.unimi.dsi.fastutil.objects.ObjectBigList

    addAll, addAll, addAll, addAll, setElements, setElements

    Methods inherited from interface it.unimi.dsi.fastutil.Stack

    isEmpty
  • Constructor Details

    • ObjectSubList

      public ObjectSubList​(ObjectBigList<K> l, long from, long to)
  • Method Details

    • add

      public boolean add​(K k)
      Description copied from class: AbstractObjectBigList
      Specified by:
      add in interface java.util.Collection<K>
      Overrides:
      add in class AbstractObjectBigList<K>
    • add

      public void add​(long index, K k)
      Description copied from class: AbstractObjectBigList
      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 AbstractObjectBigList<K>
      Parameters:
      index - a position in the big list.
      k - an element to be inserted.
      See Also:
      List.add(int,Object)
    • addAll

      public boolean addAll​(long index, java.util.Collection<? extends K> c)
      Description copied from class: AbstractObjectBigList
      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 AbstractObjectBigList<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)
    • 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:
      List.get(int)
    • remove

      public K remove​(long index)
      Description copied from class: AbstractObjectBigList
      Removes the element at the specified position.
      Specified by:
      remove in interface BigList<K>
      Overrides:
      remove in class AbstractObjectBigList<K>
      Parameters:
      index - 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)
      Description copied from class: AbstractObjectBigList
      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 AbstractObjectBigList<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)
    • 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, java.lang.Object[][] a, long offset, long length)
      Description copied from class: AbstractObjectBigList
      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>
      Overrides:
      getElements in class AbstractObjectBigList<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: AbstractObjectBigList
      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>
      Overrides:
      removeElements in class AbstractObjectBigList<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: AbstractObjectBigList
      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>
      Overrides:
      addElements in class AbstractObjectBigList<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: AbstractObjectBigList
      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 ObjectBigList<K>
      Overrides:
      listIterator in class AbstractObjectBigList<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)
    • spliterator

      public ObjectSpliterator<K> spliterator()
      Description copied from interface: ObjectBigList
      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 java.util.Collection<K>
      Specified by:
      spliterator in interface java.lang.Iterable<K>
      Specified by:
      spliterator in interface ObjectBigList<K>
      Specified by:
      spliterator in interface ObjectCollection<K>
      Specified by:
      spliterator in interface ObjectIterable<K>
      Returns:
      a type-specific spliterator on the elements of this collection.
    • 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.
      Specified by:
      subList in interface BigList<K>
      Specified by:
      subList in interface ObjectBigList<K>
      Overrides:
      subList in class AbstractObjectBigList<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)