Class AbstractDoubleCollection
- All Implemented Interfaces:
DoubleCollection,DoubleIterable,java.lang.Iterable<java.lang.Double>,java.util.Collection<java.lang.Double>
- Direct Known Subclasses:
AbstractDoubleBigList,AbstractDoubleList,AbstractDoubleSet,DoubleCollections.EmptyCollection,DoubleCollections.IterableCollection
public abstract class AbstractDoubleCollection extends java.util.AbstractCollection<java.lang.Double> implements DoubleCollection
In particular, this class provide iterator(), add(), remove(Object) and
contains(Object) methods that just call the type-specific counterpart.
Warning: Because of a name clash between the list and collection interfaces
the type-specific deletion method of a type-specific abstract
collection is rem(), rather then remove(). A
subclass must thus override rem(), rather than
remove(), to make all inherited methods work properly.
-
Method Summary
Modifier and Type Method Description booleanadd(double k)Ensures that this collection contains the specified element (optional operation).booleanadd(java.lang.Double key)Deprecated.Please use the corresponding type-specific method instead.booleanaddAll(DoubleCollection c)Adds all elements of the given type-specific collection to this collection.booleanaddAll(java.util.Collection<? extends java.lang.Double> c)booleancontains(double k)Returnstrueif this collection contains the specified element.booleancontains(java.lang.Object key)Deprecated.Please use the corresponding type-specific method instead.booleancontainsAll(DoubleCollection c)Checks whether this collection contains all elements from the given type-specific collection.booleancontainsAll(java.util.Collection<?> c)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.abstract DoubleIteratoriterator()Returns a type-specific iterator on the elements of this collection.booleanrem(double k)Removes a single instance of the specified element from this collection, if it is present (optional operation).booleanremove(java.lang.Object key)Deprecated.Please use the corresponding type-specific method instead.booleanremoveAll(DoubleCollection c)Remove from this collection all elements in the given type-specific collection.booleanremoveAll(java.util.Collection<?> c)booleanremoveIf(DoublePredicate filter)Remove from this collection all elements which satisfy the given predicate.booleanretainAll(DoubleCollection c)Retains in this collection only elements from the given type-specific collection.booleanretainAll(java.util.Collection<?> c)double[]toArray(double[] a)Returns an array containing all of the elements in this collection; the runtime type of the returned array is that of the specified array.double[]toDoubleArray()Returns a primitive type array containing the items of this collection.double[]toDoubleArray(double[] a)Deprecated.Please usetoArray()instead—this method is redundant and will be removed in the future.java.lang.StringtoString()Methods inherited from class java.util.AbstractCollection
clear, isEmpty, size, toArray, toArrayMethods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface java.util.Collection
clear, equals, hashCode, isEmpty, size, toArray, toArray, toArrayMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleCollection
doubleIterator, doubleParallelStream, doubleSpliterator, doubleStream, parallelStream, removeIf, removeIf, spliterator, streamMethods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleIterable
forEach, forEach
-
Method Details
-
iterator
Description copied from interface:DoubleCollectionReturns a type-specific iterator on the elements of this collection.- Specified by:
iteratorin interfacejava.util.Collection<java.lang.Double>- Specified by:
iteratorin interfaceDoubleCollection- Specified by:
iteratorin interfaceDoubleIterable- Specified by:
iteratorin interfacejava.lang.Iterable<java.lang.Double>- Specified by:
iteratorin classjava.util.AbstractCollection<java.lang.Double>- Returns:
- a type-specific iterator on the elements of this collection.
- See Also:
Iterable.iterator()
-
add
public boolean add(double k)Ensures that this collection contains the specified element (optional operation).- Specified by:
addin interfaceDoubleCollection- See Also:
Collection.add(Object)- Implementation Specification:
- This implementation always throws an
UnsupportedOperationException.
-
contains
public boolean contains(double k)Returnstrueif this collection contains the specified element.- Specified by:
containsin interfaceDoubleCollection- See Also:
Collection.contains(Object)- Implementation Specification:
- This implementation iterates over the elements in the collection, looking for the specified element.
-
rem
public boolean rem(double k)Removes a single instance of the specified element from this collection, if it is present (optional operation).Note that this method should be called
remove(), but the clash with the similarly named index-based method in theListinterface forces us to use a distinguished name. For simplicity, the set interfaces reinstatesremove().- Specified by:
remin interfaceDoubleCollection- See Also:
Collection.remove(Object)- Implementation Specification:
- This implementation iterates over the elements in the collection, looking for the specified element and tries to remove it.
-
add
@Deprecated public boolean add(java.lang.Double key)Deprecated.Please use the corresponding type-specific method instead.- Specified by:
addin interfacejava.util.Collection<java.lang.Double>- Specified by:
addin interfaceDoubleCollection- Overrides:
addin classjava.util.AbstractCollection<java.lang.Double>
-
contains
@Deprecated public boolean contains(java.lang.Object key)Deprecated.Please use the corresponding type-specific method instead.- Specified by:
containsin interfacejava.util.Collection<java.lang.Double>- Specified by:
containsin interfaceDoubleCollection- Overrides:
containsin classjava.util.AbstractCollection<java.lang.Double>
-
remove
@Deprecated public boolean remove(java.lang.Object key)Deprecated.Please use the corresponding type-specific method instead.- Specified by:
removein interfacejava.util.Collection<java.lang.Double>- Specified by:
removein interfaceDoubleCollection- Overrides:
removein classjava.util.AbstractCollection<java.lang.Double>
-
toArray
public double[] toArray(double[] a)Description copied from interface:DoubleCollectionReturns an array containing all of the elements in this collection; the runtime type of the returned array is that of the specified array.Note that, contrarily to
Collection.toArray(Object[]), this methods just writes all elements of this collection: no special value will be added after the last one.- Specified by:
toArrayin interfaceDoubleCollection- Parameters:
a- if this array is big enough, it will be used to store this collection.- Returns:
- a primitive type array containing the items of this collection.
- See Also:
Collection.toArray(Object[])
-
toDoubleArray
public double[] toDoubleArray()Description copied from interface:DoubleCollectionReturns a primitive type array containing the items of this collection.- Specified by:
toDoubleArrayin interfaceDoubleCollection- Returns:
- a primitive type array containing the items of this collection.
- See Also:
Collection.toArray()
-
toDoubleArray
@Deprecated public double[] toDoubleArray(double[] a)Deprecated.Please usetoArray()instead—this method is redundant and will be removed in the future.Returns a primitive type array containing the items of this collection.Note that, contrarily to
Collection.toArray(Object[]), this methods just writes all elements of this collection: no special value will be added after the last one.- Specified by:
toDoubleArrayin interfaceDoubleCollection- Parameters:
a- if this array is big enough, it will be used to store this collection.- Returns:
- a primitive type array containing the items of this collection.
- See Also:
Collection.toArray(Object[])
-
forEach
Performs the given action for each element of this type-specificIterableuntil all elements have been processed or the action throws an exception.WARNING: Overriding this method is almost always a mistake, as this overload only exists to disambiguate. Instead, override the
forEach()overload that uses the JDK's primitive consumer type (e.g.IntConsumer).If Java supported final default methods, this would be one, but sadly it does not.
If you checked and are overriding the version with
java.util.function.XConsumer, and still see this warning, then your IDE is incorrectly conflating this method with the proper method to override, and you can safely ignore this message.- Specified by:
forEachin interfaceDoubleIterable- Parameters:
action- the action to be performed for each element.- See Also:
Iterable.forEach(java.util.function.Consumer)- API Notes:
- This method exists to make final what should have been final in the interface.
-
removeIf
Remove from this collection all elements which satisfy the given predicate.WARNING: Overriding this method is almost always a mistake, as this overload only exists to disambiguate. Instead, override the
removeIf()overload that uses the JDK's primitive predicate type (e.g.IntPredicate).If Java supported final default methods, this would be one, but sadly it does not.
If you checked and are overriding the version with
java.util.function.XPredicate, and still see this warning, then your IDE is incorrectly conflating this method with the proper method to override, and you can safely ignore this message.- Specified by:
removeIfin interfaceDoubleCollection- Parameters:
filter- a predicate which returnstruefor elements to be removed.- Returns:
trueif any elements were removed.- See Also:
Collection.removeIf(java.util.function.Predicate)- API Notes:
- This method exists to make final what should have been final in the interface.
-
addAll
Description copied from interface:DoubleCollectionAdds all elements of the given type-specific collection to this collection.- Specified by:
addAllin interfaceDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
Collection.addAll(Collection)
-
addAll
public boolean addAll(java.util.Collection<? extends java.lang.Double> c)- Specified by:
addAllin interfacejava.util.Collection<java.lang.Double>- Overrides:
addAllin classjava.util.AbstractCollection<java.lang.Double>- Implementation Specification:
- This implementation delegates to the type-specific version if given a type-specific
collection, otherwise is uses the implementation from
AbstractCollection.
-
containsAll
Description copied from interface:DoubleCollectionChecks whether this collection contains all elements from the given type-specific collection.- Specified by:
containsAllin interfaceDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection contains all elements of the argument.- See Also:
Collection.containsAll(Collection)
-
containsAll
public boolean containsAll(java.util.Collection<?> c)- Specified by:
containsAllin interfacejava.util.Collection<java.lang.Double>- Overrides:
containsAllin classjava.util.AbstractCollection<java.lang.Double>- Implementation Specification:
- This implementation delegates to the type-specific version if given a type-specific
collection, otherwise is uses the implementation from
AbstractCollection.
-
removeAll
Description copied from interface:DoubleCollectionRemove from this collection all elements in the given type-specific collection.- Specified by:
removeAllin interfaceDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
Collection.removeAll(Collection)
-
removeAll
public boolean removeAll(java.util.Collection<?> c)- Specified by:
removeAllin interfacejava.util.Collection<java.lang.Double>- Overrides:
removeAllin classjava.util.AbstractCollection<java.lang.Double>- Implementation Specification:
- This implementation delegates to the type-specific version if given a type-specific
collection, otherwise is uses the implementation from
AbstractCollection.
-
retainAll
Description copied from interface:DoubleCollectionRetains in this collection only elements from the given type-specific collection.- Specified by:
retainAllin interfaceDoubleCollection- Parameters:
c- a type-specific collection.- Returns:
trueif this collection changed as a result of the call.- See Also:
Collection.retainAll(Collection)
-
retainAll
public boolean retainAll(java.util.Collection<?> c)- Specified by:
retainAllin interfacejava.util.Collection<java.lang.Double>- Overrides:
retainAllin classjava.util.AbstractCollection<java.lang.Double>- Implementation Specification:
- This implementation delegates to the type-specific version if given a type-specific
collection, otherwise is uses the implementation from
AbstractCollection.
-
toString
public java.lang.String toString()- Overrides:
toStringin classjava.util.AbstractCollection<java.lang.Double>
-