it.unimi.dsi.fastutil.doubles
Class AbstractDoubleCollection

java.lang.Object
  extended by it.unimi.dsi.fastutil.doubles.AbstractDoubleCollection
All Implemented Interfaces:
DoubleCollection, DoubleIterable, Iterable<Double>, Collection<Double>
Direct Known Subclasses:
AbstractDoubleList, AbstractDoubleSet, DoubleCollections.EmptyCollection

public abstract class AbstractDoubleCollection
extends Object
implements DoubleCollection

An abstract class providing basic methods for collections implementing a type-specific interface.

In particular, this class provide iterator(), add(), remove(Object) and contains(Object) methods that just call the type-specific counterpart.


Method Summary
 boolean add(double k)
           
 boolean add(Double o)
          Delegates to the corresponding type-specific method.
 boolean addAll(Collection<? extends Double> c)
          Adds all elements of the given collection to this collection.
 boolean addAll(DoubleCollection c)
          Adds all elements of the given type-specific collection to this collection.
 void clear()
           
 boolean contains(Object o)
          Delegates to the corresponding type-specific method.
 boolean containsAll(Collection<?> c)
          Checks whether this collection contains all elements from the given collection.
 boolean containsAll(DoubleCollection c)
          Checks whether this collection contains all elements from the given type-specific collection.
 DoubleIterator doubleIterator()
          Deprecated. 
 boolean isEmpty()
           
abstract  DoubleIterator iterator()
          Returns a type-specific iterator on the elements of this collection.
 boolean rem(double k)
          Note that this method should be called remove(), but the clash with the similarly named index-based method in the List interface forces us to use a distinguished name.
 boolean rem(Object o)
          Delegates to the corresponding type-specific method.
 boolean remove(Object ok)
           
 boolean removeAll(Collection<?> c)
          Remove from this collection all elements in the given collection.
 boolean removeAll(DoubleCollection c)
          Remove from this collection all elements in the given type-specific collection.
 boolean retainAll(Collection<?> c)
          Retains in this collection only elements from the given collection.
 boolean retainAll(DoubleCollection c)
          Retains in this collection only elements from the given type-specific collection.
 Object[] toArray()
           
 double[] toArray(double[] a)
          Returns a primitive type array containing the items of this collection.
<T> T[]
toArray(T[] a)
          Returns an containing the items of 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)
          Returns a primitive type array containing the items of this collection.
 String toString()
           
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
 
Methods inherited from interface it.unimi.dsi.fastutil.doubles.DoubleCollection
contains
 
Methods inherited from interface java.util.Collection
equals, hashCode, size
 

Method Detail

toArray

public double[] toArray(double[] a)
Description copied from interface: DoubleCollection
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:
toArray in interface DoubleCollection
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: DoubleCollection
Returns a primitive type array containing the items of this collection.

Specified by:
toDoubleArray in interface DoubleCollection
Returns:
a primitive type array containing the items of this collection.
See Also:
Collection.toArray()

toDoubleArray

public double[] toDoubleArray(double[] a)
Description copied from interface: DoubleCollection
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:
toDoubleArray in interface DoubleCollection
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[])

rem

public boolean rem(double k)
Description copied from interface: DoubleCollection
Note that this method should be called remove(), but the clash with the similarly named index-based method in the List interface forces us to use a distinguished name. For simplicity, the set interfaces reinstates remove().

Specified by:
rem in interface DoubleCollection
See Also:
Collection.remove(Object)

addAll

public boolean addAll(DoubleCollection c)
Adds all elements of the given type-specific collection to this collection.

Specified by:
addAll in interface DoubleCollection
Parameters:
c - a type-specific collection.
Returns:
true if this collection changed as a result of the call.
See Also:
Collection.addAll(Collection)

containsAll

public boolean containsAll(DoubleCollection c)
Checks whether this collection contains all elements from the given type-specific collection.

Specified by:
containsAll in interface DoubleCollection
Parameters:
c - a type-specific collection.
Returns:
true if this collection contains all elements of the argument.
See Also:
Collection.containsAll(Collection)

retainAll

public boolean retainAll(DoubleCollection c)
Retains in this collection only elements from the given type-specific collection.

Specified by:
retainAll in interface DoubleCollection
Parameters:
c - a type-specific collection.
Returns:
true if this collection changed as a result of the call.
See Also:
Collection.retainAll(Collection)

removeAll

public boolean removeAll(DoubleCollection c)
Remove from this collection all elements in the given type-specific collection.

Specified by:
removeAll in interface DoubleCollection
Parameters:
c - a type-specific collection.
Returns:
true if this collection changed as a result of the call.
See Also:
Collection.removeAll(Collection)

toArray

public Object[] toArray()
Specified by:
toArray in interface Collection<Double>

toArray

public <T> T[] toArray(T[] a)
Description copied from interface: DoubleCollection
Returns an containing the items of this collection; the runtime type of the returned array is that of the specified array.

Warning: 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:
toArray in interface DoubleCollection
Specified by:
toArray in interface Collection<Double>
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[])

addAll

public boolean addAll(Collection<? extends Double> c)
Adds all elements of the given collection to this collection.

Specified by:
addAll in interface Collection<Double>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

add

public boolean add(double k)
Specified by:
add in interface DoubleCollection
See Also:
Collection.add(Object)

remove

public boolean remove(Object ok)
Specified by:
remove in interface Collection<Double>

clear

public void clear()
Specified by:
clear in interface Collection<Double>

doubleIterator

@Deprecated
public DoubleIterator doubleIterator()
Deprecated. 

Delegates to the new covariantly stronger generic method.

Specified by:
doubleIterator in interface DoubleCollection
See Also:
DoubleCollection.iterator()

iterator

public abstract DoubleIterator iterator()
Description copied from interface: DoubleCollection
Returns a type-specific iterator on the elements of this collection.

Note that this specification strengthens the one given in Iterable.iterator(), which was already strengthened in the corresponding type-specific class, but was weakened by the fact that this interface extends Collection.

Specified by:
iterator in interface DoubleCollection
Specified by:
iterator in interface DoubleIterable
Specified by:
iterator in interface Iterable<Double>
Specified by:
iterator in interface Collection<Double>
Returns:
a type-specific iterator on the elements of this collection.

add

public boolean add(Double o)
Delegates to the corresponding type-specific method.

Specified by:
add in interface Collection<Double>

rem

public boolean rem(Object o)
Delegates to the corresponding type-specific method.


contains

public boolean contains(Object o)
Delegates to the corresponding type-specific method.

Specified by:
contains in interface Collection<Double>

containsAll

public boolean containsAll(Collection<?> c)
Checks whether this collection contains all elements from the given collection.

Specified by:
containsAll in interface Collection<Double>
Parameters:
c - a collection.
Returns:
true if this collection contains all elements of the argument.

retainAll

public boolean retainAll(Collection<?> c)
Retains in this collection only elements from the given collection.

Specified by:
retainAll in interface Collection<Double>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

removeAll

public boolean removeAll(Collection<?> c)
Remove from this collection all elements in the given collection. If the collection is an instance of this class, it uses faster iterators.

Specified by:
removeAll in interface Collection<Double>
Parameters:
c - a collection.
Returns:
true if this collection changed as a result of the call.

isEmpty

public boolean isEmpty()
Specified by:
isEmpty in interface Collection<Double>

toString

public String toString()
Overrides:
toString in class Object