Class DoubleLists.Singleton
- All Implemented Interfaces:
DoubleCollection,DoubleIterable,DoubleList,DoubleStack,Stack<Double>,Serializable,Cloneable,Comparable<List<? extends Double>>,Iterable<Double>,Collection<Double>,List<Double>,RandomAccess
- Enclosing class:
- DoubleLists
This class may be useful to implement your own in case you subclass a type-specific list.
- See Also:
-
Nested Class Summary
Nested classes/interfaces inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleList
AbstractDoubleList.DoubleRandomAccessSubList, AbstractDoubleList.DoubleSubList -
Method Summary
Modifier and TypeMethodDescriptionbooleanaddAll(int i, 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 i, DoubleList c) Inserts all of the elements in the specified type-specific list into this type-specific list at the specified position (optional operation).booleanaddAll(int i, Collection<? extends Double> c) Adds all of the elements in the specified collection to this list (optional operation).booleanAdds all elements of the given type-specific collection to this collection.booleanaddAll(DoubleList c) Appends all of the elements in the specified type-specific list to the end of this type-specific list (optional operation).booleanaddAll(Collection<? extends Double> c) voidaddElements(int index, double[] a) Add (hopefully quickly) elements to this type-specific list.voidaddElements(int index, double[] a, int offset, int length) Add (hopefully quickly) elements to this type-specific list.voidclear()clone()booleancontains(double k) Returns true if this list contains the specified element.voidDeprecated.voidforEach(DoubleConsumer action) Performs the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.doublegetDouble(int i) 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.intindexOf(double k) Returns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.iterator()Returns a type-specific iterator on the elements of this collection.Returns a type-specific list iterator on the list.listIterator(int i) 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).booleanRemove from this collection all elements in the given type-specific collection.booleanremoveAll(Collection<?> c) doubleremoveDouble(int i) 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.booleanremoveIf(DoublePredicate filter) Remove from this collection all elements which satisfy the given predicate.booleanDeprecated.voidreplaceAll(DoubleUnaryOperator operator) Replaces each element of this list with the result of applying the operator to that element.voidreplaceAll(UnaryOperator<Double> operator) Deprecated.booleanRetains in this collection only elements from the given type-specific collection.booleanretainAll(Collection<?> c) voidsetElements(double[] a) Set (hopefully quickly) elements to match the array given.voidsetElements(int index, double[] a) Set (hopefully quickly) elements to match the array given.voidsetElements(int index, double[] a, int offset, int length) Set (hopefully quickly) elements to match the array given.intsize()voidsize(int size) Sets the size of this list.voidsort(DoubleComparator comparator) Sort a list using a type-specific comparator.voidsort(Comparator<? super Double> comparator) Deprecated.Returns a type-specific spliterator on the elements of this list.subList(int from, int to) Returns a type-specific view of the portion of this list from the indexfrom, inclusive, to the indexto, exclusive.Object[]toArray()Deprecated.double[]Returns a primitive type array containing the items of this collection.voidunstableSort(DoubleComparator comparator) Sorts this list using a sort not assured to be stable.voidunstableSort(Comparator<? super Double> comparator) Deprecated.Methods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleList
add, add, compareTo, equals, hashCode, lastIndexOf, peekDouble, popDouble, push, replaceAll, set, toArray, topDouble, toStringMethods inherited from class it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
add, contains, containsAll, containsAll, forEach, remove, removeIf, toDoubleArrayMethods inherited from class java.util.AbstractCollection
isEmpty, toArrayMethods inherited from interface java.util.Collection
toArrayMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleCollection
containsAll, doubleIterator, doubleParallelStream, doubleSpliterator, doubleStream, parallelStream, removeIf, stream, toDoubleArrayMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleIterable
forEachMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleList
add, add, contains, get, indexOf, lastIndexOf, remove, remove, setMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleStack
peek, pop, push, topMethods inherited from interface java.util.List
containsAll, isEmpty, toArray
-
Method Details
-
getDouble
public double getDouble(int i) Description copied from interface:DoubleListReturns the element at the specified position in this list.- Specified by:
getDoublein interfaceDoubleList- See Also:
-
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:
-
removeDouble
public double removeDouble(int i) 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:
-
contains
public boolean contains(double k) Description copied from class:AbstractDoubleListReturns true if this list contains the specified element.- Specified by:
containsin interfaceDoubleCollection- Overrides:
containsin classAbstractDoubleList- See Also:
-
indexOf
public int indexOf(double k) Description copied from interface:DoubleListReturns the index of the first occurrence of the specified element in this list, or -1 if this list does not contain the element.- Specified by:
indexOfin interfaceDoubleList- Overrides:
indexOfin classAbstractDoubleList- See Also:
-
toDoubleArray
public double[] toDoubleArray()Description copied from interface:DoubleCollectionReturns a primitive type array containing the items of this collection.- Specified by:
toDoubleArrayin interfaceDoubleCollection- Overrides:
toDoubleArrayin classAbstractDoubleList- Returns:
- a primitive type array containing the items of this collection.
- See Also:
-
listIterator
Description copied from class:AbstractDoubleListReturns a type-specific list iterator on the list.- Specified by:
listIteratorin interfaceDoubleList- Specified by:
listIteratorin interfaceList<Double>- Overrides:
listIteratorin classAbstractDoubleList- See Also:
-
iterator
Description copied from class:AbstractDoubleListReturns a type-specific iterator on the elements of this collection.- Specified by:
iteratorin interfaceCollection<Double>- Specified by:
iteratorin interfaceDoubleCollection- Specified by:
iteratorin interfaceDoubleIterable- Specified by:
iteratorin interfaceDoubleList- Specified by:
iteratorin interfaceIterable<Double>- Specified by:
iteratorin interfaceList<Double>- Overrides:
iteratorin classAbstractDoubleList- Returns:
- a type-specific iterator on the elements of this collection.
- See Also:
-
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 interfaceCollection<Double>- Specified by:
spliteratorin interfaceDoubleCollection- Specified by:
spliteratorin interfaceDoubleIterable- Specified by:
spliteratorin interfaceDoubleList- Specified by:
spliteratorin interfaceIterable<Double>- Specified by:
spliteratorin interfaceList<Double>- Returns:
- a type-specific spliterator on the elements of this collection.
-
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 interfaceList<Double>- Overrides:
listIteratorin classAbstractDoubleList- See Also:
-
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 interfaceList<Double>- Overrides:
subListin classAbstractDoubleList- See Also:
-
forEach
Deprecated.Description copied from interface:DoubleIterable- Specified by:
forEachin interfaceDoubleIterable- Specified by:
forEachin interfaceIterable<Double>
-
addAll
Description copied from class:AbstractDoubleListAdds all of the elements in the specified collection to this list (optional operation).- Specified by:
addAllin interfaceList<Double>- Overrides:
addAllin classAbstractDoubleList
-
addAll
Description copied from class:AbstractDoubleList- Specified by:
addAllin interfaceCollection<Double>- Specified by:
addAllin interfaceList<Double>- Overrides:
addAllin classAbstractDoubleList
-
removeAll
Description copied from class:AbstractDoubleCollection- Specified by:
removeAllin interfaceCollection<Double>- Specified by:
removeAllin interfaceList<Double>- Overrides:
removeAllin classAbstractDoubleCollection
-
retainAll
Description copied from class:AbstractDoubleCollection- Specified by:
retainAllin interfaceCollection<Double>- Specified by:
retainAllin interfaceList<Double>- Overrides:
retainAllin classAbstractDoubleCollection
-
removeIf
Deprecated.Description copied from interface:DoubleCollection- Specified by:
removeIfin interfaceCollection<Double>- Specified by:
removeIfin interfaceDoubleCollection
-
replaceAll
Deprecated.Description copied from interface:DoubleList- Specified by:
replaceAllin interfaceDoubleList- Specified by:
replaceAllin interfaceList<Double>
-
replaceAll
Description copied from interface:DoubleListReplaces each element of this list with the result of applying the operator to that element.- Specified by:
replaceAllin interfaceDoubleList- Parameters:
operator- the operator to apply to each element.- See Also:
-
forEach
Description copied from class:AbstractDoubleListPerforms the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.- Specified by:
forEachin interfaceDoubleIterable- Overrides:
forEachin classAbstractDoubleList- Parameters:
action- the action to be performed for each element.- See Also:
-
addAll
Description copied from interface:DoubleListAppends all of the elements in the specified type-specific list to the end of this type-specific list (optional operation).- Specified by:
addAllin interfaceDoubleList- See Also:
-
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:
-
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:
-
addAll
Description copied from class:AbstractDoubleListAdds all elements of the given type-specific collection to this collection.- Specified by:
addAllin interfaceDoubleCollection- Overrides:
addAllin classAbstractDoubleList- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
-
removeAll
Description copied from interface:DoubleCollectionRemove from this collection all elements in the given type-specific collection.- Specified by:
removeAllin interfaceDoubleCollection- Overrides:
removeAllin classAbstractDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
-
retainAll
Description copied from interface:DoubleCollectionRetains in this collection only elements from the given type-specific collection.- Specified by:
retainAllin interfaceDoubleCollection- Overrides:
retainAllin classAbstractDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
-
removeIf
Description copied from interface:DoubleCollectionRemove from this collection all elements which satisfy the given predicate.- Specified by:
removeIfin interfaceDoubleCollection- Parameters:
filter- a predicate which returnstruefor elements to be removed.- Returns:
trueif any elements were removed.- See Also:
-
toArray
Deprecated.- Specified by:
toArrayin interfaceCollection<Double>- Specified by:
toArrayin interfaceList<Double>- Overrides:
toArrayin classAbstractCollection<Double>
-
sort
Description copied from interface:DoubleListSort a list using a type-specific comparator.Pass
nullto sort using natural ordering.- Specified by:
sortin interfaceDoubleList- See Also:
-
unstableSort
Description copied from interface:DoubleListSorts this list using a sort not assured to be stable.Pass
nullto sort using natural ordering.This differs from
List.sort(java.util.Comparator)in that the results are not assured to be stable, but may be a bit faster.Unless a subclass specifies otherwise, the results of the method if the list is concurrently modified during the sort are unspecified.
- Specified by:
unstableSortin interfaceDoubleList
-
sort
Deprecated.Description copied from interface:DoubleList- Specified by:
sortin interfaceDoubleList- Specified by:
sortin interfaceList<Double>
-
unstableSort
Deprecated.Description copied from interface:DoubleListSorts this list using a sort not assured to be stable.- Specified by:
unstableSortin interfaceDoubleList
-
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) Description copied from class:AbstractDoubleListAdd (hopefully quickly) elements to this type-specific list.- Specified by:
addElementsin interfaceDoubleList- Overrides:
addElementsin classAbstractDoubleList- Parameters:
index- the index at which to add elements.a- the array containing the elements.
-
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(double[] a) Description copied from interface:DoubleListSet (hopefully quickly) elements to match the array given.- Specified by:
setElementsin interfaceDoubleList- Parameters:
a- the array containing the elements.
-
setElements
public void setElements(int index, double[] a) Description copied from interface:DoubleListSet (hopefully quickly) elements to match the array given.- Specified by:
setElementsin interfaceDoubleList- Parameters:
index- the index at which to start setting elements.a- the array containing the elements.
-
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 byListIterator iter = listIterator(index); int i = 0; while (i < length) { iter.next(); iter.set(a[offset + i++]); }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.- 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.
-
size
public int size()- Specified by:
sizein interfaceCollection<Double>- Specified by:
sizein interfaceList<Double>- Specified by:
sizein classAbstractCollection<Double>
-
size
public void size(int size) Description copied from interface:DoubleListSets the size of this 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:
sizein interfaceDoubleList- Overrides:
sizein classAbstractDoubleList- Parameters:
size- the new size.
-
clear
public void clear()Description copied from class:AbstractDoubleList- Specified by:
clearin interfaceCollection<Double>- Specified by:
clearin interfaceList<Double>- Overrides:
clearin classAbstractDoubleList
-
clone
-