Package it.unimi.dsi.fastutil.doubles
Class AbstractDoubleList.DoubleSubList
java.lang.Object
java.util.AbstractCollection<java.lang.Double>
it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
it.unimi.dsi.fastutil.doubles.AbstractDoubleList
it.unimi.dsi.fastutil.doubles.AbstractDoubleList.DoubleSubList
- All Implemented Interfaces:
DoubleCollection,DoubleIterable,DoubleList,DoubleStack,Stack<java.lang.Double>,java.io.Serializable,java.lang.Comparable<java.util.List<? extends java.lang.Double>>,java.lang.Iterable<java.lang.Double>,java.util.Collection<java.lang.Double>,java.util.List<java.lang.Double>
- Direct Known Subclasses:
AbstractDoubleList.DoubleRandomAccessSubList
- Enclosing class:
- AbstractDoubleList
public static class AbstractDoubleList.DoubleSubList extends AbstractDoubleList 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.AbstractDoubleList
AbstractDoubleList.DoubleRandomAccessSubList, AbstractDoubleList.DoubleSubList -
Constructor Summary
Constructors Constructor Description DoubleSubList(DoubleList l, int from, int to) -
Method Summary
Modifier and Type Method Description booleanadd(double k)Ensures that this collection contains the specified element (optional operation).voidadd(int index, double k)Inserts the specified element at the specified position in this list (optional operation).booleanaddAll(int index, DoubleCollection c)Inserts all of the elements in the specified type-specific collection into this type-specific list at the specified position (optional operation).booleanaddAll(int index, DoubleList l)Inserts all of the elements in the specified type-specific list into this type-specific list at the specified position (optional operation).booleanaddAll(int index, java.util.Collection<? extends java.lang.Double> c)Adds all of the elements in the specified collection to this list (optional operation).voidaddElements(int index, double[] a, int offset, int length)Add (hopefully quickly) elements to this type-specific list.doublegetDouble(int index)Returns the element at the specified position in this list.voidgetElements(int from, double[] a, int offset, int length)Copies (hopefully quickly) elements of this type-specific list into the given array.DoubleListIteratorlistIterator(int index)Returns a type-specific list iterator on the list starting at a given index.booleanrem(double k)Removes a single instance of the specified element from this collection, if it is present (optional operation).doubleremoveDouble(int index)Removes the element at the specified position in this list (optional operation).voidremoveElements(int from, int to)Removes (hopefully quickly) elements of this type-specific list.doubleset(int index, double k)Replaces the element at the specified position in this list with the specified element (optional operation).voidsetElements(int index, double[] a, int offset, int length)Set (hopefully quickly) elements to match the array given.intsize()DoubleSpliteratorspliterator()Returns a type-specific spliterator on the elements of this list.DoubleListsubList(int from, int to)Returns a type-specific view of the portion of this list from the indexfrom, inclusive, to the indexto, exclusive.Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleList
addAll, addAll, addElements, clear, compareTo, contains, equals, forEach, hashCode, indexOf, iterator, lastIndexOf, listIterator, peekDouble, popDouble, push, replaceAll, size, toArray, toDoubleArray, topDouble, toStringMethods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
add, contains, containsAll, containsAll, forEach, remove, removeAll, removeAll, removeIf, retainAll, retainAll, toDoubleArrayMethods inherited from class java.util.AbstractCollection
isEmpty, toArray, toArrayMethods inherited from class java.lang.Object
getClass, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
toArrayMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleCollection
containsAll, doubleIterator, doubleParallelStream, doubleSpliterator, doubleStream, parallelStream, removeAll, removeIf, removeIf, removeIf, retainAll, stream, toDoubleArrayMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleIterable
forEach, forEachMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleList
add, add, addAll, contains, get, indexOf, lastIndexOf, remove, remove, replaceAll, replaceAll, set, setElements, setElements, sort, sort, unstableSort, unstableSortMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleStack
peek, pop, push, topMethods inherited from interface java.util.List
containsAll, isEmpty, removeAll, retainAll, toArray, toArray
-
Constructor Details
-
DoubleSubList
-
-
Method Details
-
add
public boolean add(double k)Description copied from class:AbstractDoubleListEnsures that this collection contains the specified element (optional operation).- Specified by:
addin interfaceDoubleCollection- Specified by:
addin interfaceDoubleList- Overrides:
addin classAbstractDoubleList- See Also:
Collection.add(Object)
-
add
public void add(int index, double k)Description copied from class:AbstractDoubleListInserts the specified element at the specified position in this list (optional operation).- Specified by:
addin interfaceDoubleList- Overrides:
addin classAbstractDoubleList- See Also:
List.add(int,Object)
-
addAll
public boolean addAll(int index, java.util.Collection<? extends java.lang.Double> c)Description copied from class:AbstractDoubleListAdds all of the elements in the specified collection to this list (optional operation).- Specified by:
addAllin interfacejava.util.List<java.lang.Double>- Overrides:
addAllin classAbstractDoubleList
-
getDouble
public double getDouble(int index)Description copied from interface:DoubleListReturns the element at the specified position in this list.- Specified by:
getDoublein interfaceDoubleList- See Also:
List.get(int)
-
removeDouble
public double removeDouble(int index)Description copied from class:AbstractDoubleListRemoves the element at the specified position in this list (optional operation).- Specified by:
removeDoublein interfaceDoubleList- Overrides:
removeDoublein classAbstractDoubleList- See Also:
List.remove(int)
-
set
public double set(int index, double k)Description copied from class:AbstractDoubleListReplaces the element at the specified position in this list with the specified element (optional operation).- Specified by:
setin interfaceDoubleList- Overrides:
setin classAbstractDoubleList- See Also:
List.set(int,Object)
-
size
public int size()- Specified by:
sizein interfacejava.util.Collection<java.lang.Double>- Specified by:
sizein interfacejava.util.List<java.lang.Double>- Specified by:
sizein classjava.util.AbstractCollection<java.lang.Double>
-
getElements
public void getElements(int from, double[] a, int offset, int length)Description copied from class:AbstractDoubleListCopies (hopefully quickly) elements of this type-specific list into the given array.This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
getElementsin interfaceDoubleList- Overrides:
getElementsin classAbstractDoubleList- Parameters:
from- the start index (inclusive).a- the destination array.offset- the offset into the destination array where to store the first element copied.length- the number of elements to be copied.
-
removeElements
public void removeElements(int from, int to)Description copied from class:AbstractDoubleListRemoves (hopefully quickly) elements of this type-specific list.This is a trivial iterator-based based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
removeElementsin interfaceDoubleList- Overrides:
removeElementsin classAbstractDoubleList- Parameters:
from- the start index (inclusive).to- the end index (exclusive).
-
addElements
public void addElements(int index, double[] a, int offset, int length)Description copied from class:AbstractDoubleListAdd (hopefully quickly) elements to this type-specific list.This is a trivial iterator-based implementation. It is expected that implementations will override this method with a more optimized version.
- Specified by:
addElementsin interfaceDoubleList- Overrides:
addElementsin classAbstractDoubleList- Parameters:
index- the index at which to add elements.a- the array containing the elements.offset- the offset of the first element to add.length- the number of elements to add.
-
setElements
public void setElements(int index, double[] a, int offset, int length)Description copied from interface:DoubleListSet (hopefully quickly) elements to match the array given. Sets each in this list to the corresponding elements in the array, as if by
However, the exact implementation may be more efficient, taking into account whether random access is faster or not, or at the discretion of subclasses, abuse internals.ListIterator iter = listIterator(index); int i = 0; while (i < length) { iter.next(); iter.set(a[offset + i++]); }- Specified by:
setElementsin interfaceDoubleList- Overrides:
setElementsin classAbstractDoubleList- Parameters:
index- the index at which to start setting elements.a- the array containing the elementsoffset- the offset of the first element to add.length- the number of elements to add.
-
listIterator
Description copied from class:AbstractDoubleListReturns a type-specific list iterator on the list starting at a given index.- Specified by:
listIteratorin interfaceDoubleList- Specified by:
listIteratorin interfacejava.util.List<java.lang.Double>- Overrides:
listIteratorin classAbstractDoubleList- See Also:
List.listIterator(int)
-
spliterator
Description copied from interface:DoubleListReturns a type-specific spliterator on the elements of this list.List spliterators must report at least
Spliterator.SIZEDandSpliterator.ORDERED.See
List.spliterator()for more documentation on the requirements of the returned spliterator.- Specified by:
spliteratorin interfacejava.util.Collection<java.lang.Double>- Specified by:
spliteratorin interfaceDoubleCollection- Specified by:
spliteratorin interfaceDoubleIterable- Specified by:
spliteratorin interfaceDoubleList- Specified by:
spliteratorin interfacejava.lang.Iterable<java.lang.Double>- Specified by:
spliteratorin interfacejava.util.List<java.lang.Double>- Returns:
- a type-specific spliterator on the elements of this collection.
-
subList
Description copied from interface:DoubleListReturns a type-specific view of the portion of this list from the indexfrom, inclusive, to the indexto, exclusive.- Specified by:
subListin interfaceDoubleList- Specified by:
subListin interfacejava.util.List<java.lang.Double>- Overrides:
subListin classAbstractDoubleList- See Also:
List.subList(int,int)
-
rem
public boolean rem(double k)Description copied from class:AbstractDoubleListRemoves a single instance of the specified element from this collection, if it is present (optional operation).- Specified by:
remin interfaceDoubleCollection- Overrides:
remin classAbstractDoubleList- See Also:
List.remove(Object)
-
addAll
Description copied from interface:DoubleListInserts all of the elements in the specified type-specific collection into this type-specific list at the specified position (optional operation).- Specified by:
addAllin interfaceDoubleList- Overrides:
addAllin classAbstractDoubleList- See Also:
List.addAll(int,java.util.Collection)
-
addAll
Description copied from interface:DoubleListInserts all of the elements in the specified type-specific list into this type-specific list at the specified position (optional operation).- Specified by:
addAllin interfaceDoubleList- See Also:
List.addAll(int,Collection)
-