Package it.unimi.dsi.fastutil.doubles
Class AbstractDoubleBigList.DoubleSubList
- java.lang.Object
-
- java.util.AbstractCollection<java.lang.Double>
-
- it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
-
- it.unimi.dsi.fastutil.doubles.AbstractDoubleBigList
-
- it.unimi.dsi.fastutil.doubles.AbstractDoubleBigList.DoubleSubList
-
- All Implemented Interfaces:
BigList<java.lang.Double>
,DoubleBigList
,DoubleCollection
,DoubleIterable
,DoubleStack
,Size64
,Stack<java.lang.Double>
,java.io.Serializable
,java.lang.Comparable<BigList<? extends java.lang.Double>>
,java.lang.Iterable<java.lang.Double>
,java.util.Collection<java.lang.Double>
- Direct Known Subclasses:
AbstractDoubleBigList.DoubleRandomAccessSubList
- Enclosing class:
- AbstractDoubleBigList
public static class AbstractDoubleBigList.DoubleSubList extends AbstractDoubleBigList 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.doubles.AbstractDoubleBigList
AbstractDoubleBigList.DoubleRandomAccessSubList, AbstractDoubleBigList.DoubleSubList
-
-
Constructor Summary
Constructors Constructor Description DoubleSubList(DoubleBigList l, long from, long to)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description boolean
add(double k)
Ensures that this collection contains the specified element (optional operation).void
add(long index, double k)
Inserts the specified element at the specified position in this type-specific big list (optional operation).boolean
addAll(long index, DoubleBigList l)
Inserts all of the elements in the specified type-specific big list into this type-specific big list at the specified position (optional operation).boolean
addAll(long index, DoubleCollection c)
Inserts all of the elements in the specified type-specific collection into this type-specific big list at the specified position (optional operation).boolean
addAll(long index, java.util.Collection<? extends java.lang.Double> c)
Adds all of the elements in the specified collection to this list (optional operation).void
addElements(long index, double[][] a, long offset, long length)
Add (hopefully quickly) elements to this type-specific big list.double
getDouble(long index)
Returns the element at the specified position.void
getElements(long from, double[][] a, long offset, long length)
Copies (hopefully quickly) elements of this type-specific big list into the given big array.DoubleBigListIterator
listIterator(long index)
Returns a type-specific list iterator on this type-specific big list starting at a given index.boolean
rem(double k)
Removes a single instance of the specified element from this collection, if it is present (optional operation).double
removeDouble(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.double
set(long index, double 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.DoubleSpliterator
spliterator()
Returns a type-specific spliterator on the elements of this big-list.DoubleBigList
subList(long from, long to)
Returns a type-specific view of the portion of this type-specific big list from the indexfrom
, inclusive, to the indexto
, exclusive.-
Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleBigList
add, addAll, addAll, addElements, clear, compareTo, contains, equals, forEach, get, hashCode, indexOf, indexOf, iterator, lastIndexOf, lastIndexOf, listIterator, peek, peekDouble, pop, popDouble, push, push, remove, set, setElements, size, size, top, topDouble, toString
-
Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
add, contains, containsAll, containsAll, forEach, remove, removeAll, removeAll, removeIf, retainAll, retainAll, toArray, toDoubleArray, toDoubleArray
-
Methods inherited from interface java.util.Collection
containsAll, isEmpty, removeAll, retainAll, toArray, toArray, toArray
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleBigList
addAll, addAll, addAll, setElements, setElements
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleCollection
add, contains, containsAll, doubleIterator, doubleParallelStream, doubleSpliterator, doubleStream, parallelStream, remove, removeAll, removeIf, removeIf, removeIf, retainAll, stream, toArray, toDoubleArray, toDoubleArray
-
Methods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleIterable
forEach, forEach
-
-
-
-
Constructor Detail
-
DoubleSubList
public DoubleSubList(DoubleBigList l, long from, long to)
-
-
Method Detail
-
add
public boolean add(double k)
Description copied from class:AbstractDoubleBigList
Ensures that this collection contains the specified element (optional operation).- Specified by:
add
in interfaceDoubleCollection
- Overrides:
add
in classAbstractDoubleBigList
- See Also:
Collection.add(Object)
-
add
public void add(long index, double k)
Description copied from class:AbstractDoubleBigList
Inserts the specified element at the specified position in this type-specific big list (optional operation).- Specified by:
add
in interfaceDoubleBigList
- Overrides:
add
in classAbstractDoubleBigList
- See Also:
BigList.add(long,Object)
-
addAll
public boolean addAll(long index, java.util.Collection<? extends java.lang.Double> c)
Description copied from class:AbstractDoubleBigList
Adds all of the elements in the specified collection to this list (optional operation).- Specified by:
addAll
in interfaceBigList<java.lang.Double>
- Overrides:
addAll
in classAbstractDoubleBigList
- 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)
-
getDouble
public double getDouble(long index)
Description copied from interface:DoubleBigList
Returns the element at the specified position.- Specified by:
getDouble
in interfaceDoubleBigList
- See Also:
BigList.get(long)
-
removeDouble
public double removeDouble(long index)
Description copied from class:AbstractDoubleBigList
Removes the element at the specified position.- Specified by:
removeDouble
in interfaceDoubleBigList
- Overrides:
removeDouble
in classAbstractDoubleBigList
- See Also:
BigList.remove(long)
-
set
public double set(long index, double k)
Description copied from class:AbstractDoubleBigList
Replaces the element at the specified position in this big list with the specified element (optional operation).- Specified by:
set
in interfaceDoubleBigList
- Overrides:
set
in classAbstractDoubleBigList
- See Also:
BigList.set(long,Object)
-
size64
public long size64()
Description copied from interface:Size64
Returns the size of this data structure as a long.
-
getElements
public void getElements(long from, double[][] a, long offset, long length)
Description copied from class:AbstractDoubleBigList
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 interfaceDoubleBigList
- Overrides:
getElements
in classAbstractDoubleBigList
- 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:AbstractDoubleBigList
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 interfaceDoubleBigList
- Overrides:
removeElements
in classAbstractDoubleBigList
- Parameters:
from
- the start index (inclusive).to
- the end index (exclusive).
-
addElements
public void addElements(long index, double[][] a, long offset, long length)
Description copied from class:AbstractDoubleBigList
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 interfaceDoubleBigList
- Overrides:
addElements
in classAbstractDoubleBigList
- 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 DoubleBigListIterator listIterator(long index)
Description copied from class:AbstractDoubleBigList
Returns a type-specific list iterator on this type-specific big list starting at a given index.- Specified by:
listIterator
in interfaceBigList<java.lang.Double>
- Specified by:
listIterator
in interfaceDoubleBigList
- Overrides:
listIterator
in classAbstractDoubleBigList
- 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 DoubleSpliterator spliterator()
Description copied from interface:DoubleBigList
Returns a type-specific spliterator on the elements of this big-list.BigList spliterators must report at least
Spliterator.SIZED
andSpliterator.ORDERED
.See
List.spliterator()
for more documentation on the requirements of the returned spliterator (despiteBigList
not being aList
, most of the same requirements apply.- Specified by:
spliterator
in interfacejava.util.Collection<java.lang.Double>
- Specified by:
spliterator
in interfaceDoubleBigList
- Specified by:
spliterator
in interfaceDoubleCollection
- Specified by:
spliterator
in interfaceDoubleIterable
- Specified by:
spliterator
in interfacejava.lang.Iterable<java.lang.Double>
- Returns:
- a type-specific spliterator on the elements of this collection.
-
subList
public DoubleBigList subList(long from, long to)
Description copied from interface:DoubleBigList
Returns a type-specific view of the portion of this type-specific big list from the indexfrom
, inclusive, to the indexto
, exclusive.- Specified by:
subList
in interfaceBigList<java.lang.Double>
- Specified by:
subList
in interfaceDoubleBigList
- Overrides:
subList
in classAbstractDoubleBigList
- 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)
-
rem
public boolean rem(double k)
Description copied from class:AbstractDoubleBigList
Removes a single instance of the specified element from this collection, if it is present (optional operation).- Specified by:
rem
in interfaceDoubleCollection
- Overrides:
rem
in classAbstractDoubleBigList
- See Also:
Collection.remove(Object)
-
addAll
public boolean addAll(long index, DoubleCollection c)
Description copied from class:AbstractDoubleBigList
Inserts all of the elements in the specified type-specific collection into this type-specific big list at the specified position (optional operation).- Specified by:
addAll
in interfaceDoubleBigList
- Overrides:
addAll
in classAbstractDoubleBigList
- See Also:
List.addAll(int,java.util.Collection)
-
addAll
public boolean addAll(long index, DoubleBigList l)
Description copied from interface:DoubleBigList
Inserts all of the elements in the specified type-specific big list into this type-specific big list at the specified position (optional operation).- Specified by:
addAll
in interfaceDoubleBigList
- See Also:
BigList.addAll(long,Collection)
-
-